2009-09-18 75 views
0

编辑:derp,使用pageX/Y而不是clientX/Y - 显然scrollBy需要使用该偏移量而不是其他值。杰吉运动消失了。jQuery单击并拖动/滚动窗口:锯齿状运动

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

编辑:

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

X 398:403

ý374:377

X 403:399

ý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); 
    }); 

回答

0

使用clientX/Y代替pageX属性/ Y - 显然scrollBy预计clientX