2009-09-18 56 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