jQuery щелкните и перетащите / прокрутите окно: неровное движение - PullRequest
0 голосов
/ 18 сентября 2009

Edit: derp, используя pageX / Y вместо clientX / Y - очевидно, scrollBy ожидает ввод с этим смещением, а не с другим. Исчезло неровное движение.

Я получаю неровные движения, когда выполняю небольшие шаги прокрутки, используя следующие привязки. Кто-нибудь может указать мне правильное направление, как это сгладить? К вашему сведению, это с перебоями. Похоже, если я нажму и удерживаю секунду, то перетаскиваю на приличной скорости проблем нет.

Edit:

Какого черта? Я получаю этот вывод при отладке ... очевидная пробежка вперед и назад. Это будет происходить последовательно и, похоже, не будет коррелировать с мышью, кроме того, что мышь движется.

x 398: 403

y 374: 377

x 403: 399

y 377: 374

x 399: 404

y 374: 377

Josh

    sococo.client.panMap = function(e){
        e.preventDefault();
        var movex = sococo.client.currX - e.pageX ;
        var movey = sococo.client.currY - e.pageY;
        console.log( sococo.client.currX +" : " + e.pageX );                
        window.scrollBy(movex,movey);
        sococo.client.currY = e.pageY;
        sococo.client.currX = e.pageX;
    }

    $(document).mousedown( function(e){
        e.preventDefault();         
        sococo.client.currX = e.pageX;
        sococo.client.currY = e.pageY;
        $(document).bind( "mousemove", sococo.client.panMap );          
    });

    $(document).mouseup( function(e){
        e.preventDefault();
        $(document).unbind( "mousemove", sococo.client.panMap );
    });

1 Ответ

0 голосов
/ 29 марта 2010

Используйте clientX / Y вместо pageX / Y - очевидно, scrollBy ожидает clientX

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...