Umr001
@Umr001
php

Глючит ползунок, код написал видимо коряво, но где проблема в упор не вижу, код залил на фидл, там тоже можно глюк наблюдать, поможете?

У меня есть ползунок и он глючит вот так:
https://www.youtube.com/watch?v=eVXTafDkW7w
Все это дело находится в div высотой 50 пикселей и шириной 200. У меня есть кусок кода, который возвращает ползунок в исходное положение если курсор выходит за пределы этого div. И вот когда я просто дергаю этот ползунок он работает нормально, но после того как я зажму ползунок начну его вести и выйду за пределы этого div, то начинает проявляется этот глюк.
Я перенес код в жеес фидл и там тоже наблюдается этот глюк https://jsfiddle.net/8tq2tngu/ попробуй зажать ползунок и водите им просто так водя ровно по линии, проблем нет, а потом попробуй зажать ползунок чуть чуть поводить и не отпуская потянуть мышку вниз, отпустите и попробуйте поюзать ползунок опять
Нид хелп
  • Вопрос задан
  • 158 просмотров
Решения вопроса 1
@Ridz
$(function() {
    var isDown;
    $(".fc").on("mousedown", function(e) {
        e.preventDefault();
        isDown = true
    });
    var offset = $(".path-container").offset();
    var width = $(".border-path").width();
    $(".path-container").mousemove(function(e) {

        if (isDown) {
            var left = e.pageX - offset.left - $(".fc").width() * 1.5;
            var bleft = left + $(".fc").width();
            var w = width - bleft - 4;
            if (w > 0) {
                $(".fc").css({
                    "left": left
                });
                $(".border-path").css({
                    "left": bleft,
                    "width": w
                })
            }
        }
    }).on("mouseup mouseleave", function() {
        $(".fc").stop(true, true).animate({
            "left": "-46px"
        });
        $(".border-path").stop(true,
            true).animate({
            "left": 0,
            "width": "100%"
        });
        isDown = false
    })
});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы