jQuery单击并拖动/滚动窗口:锯齿状运动

时间:2009-09-18 02:26:26

标签: javascript jquery scroll

编辑:derp,使用pageX / Y而不是clientX / Y - 显然scrollBy期望输入具有该偏移而不是另一个。 Jaggy运动消失了。

使用以下绑定进行小滚动增量时,我会出现锯齿状运动。任何人都可以指出我正确的方向,如何平滑这个?仅供参考,其间歇性。看来,如果我点击并按住一秒钟,然后以合适的速度拖动就没有问题了。

编辑:

到底是什么?我在调试时得到了这个输出...明显的慢跑向后和向前。这将连续发生,似乎与鼠标无关,除了鼠标正在移动。

x 398:403

y 374:377

x 403:399

y 377:374

x 399:404

y 374:377

约什

    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 :(得分:0)

使用clientX / Y而不是pageX / Y - 显然scrollBy需要clientX