2012-01-11 29 views
0

我正在嘗試使用js和HTML5實現線性輪播。 我需要計算屏幕中當前觸摸的偏移量(dx)。 我的代碼:
計算抵消頭寸

document.addEventListener('touchmove', function(event) { 
    event.preventDefault(); 
    var touch = event.touches[0]; 
    posx=touch.pageX; 
posy=touch.pageY; 
},false); 

例如:當前POSX是365和我移動1px的權利。那麼我的DX將是1等等......

在此先感謝。

回答

1

將當前的x和y位置保存爲全局變量,並在再次覆蓋這些值之前計算最後一個值和當前值之間的差值。

+0

謝謝,我試過了。現在我還有一個問題,我怎樣才能保存最後的位置而不會再覆蓋它呢? – Elad 2012-01-11 11:21:21

+0

對不起,我不明白你的意思......爲了保存最後一個值,每次在計算(並處理或保存)差值後都必須覆蓋它。 – Connum 2012-01-11 12:05:26

+0

可以說我最後的pos是:350,而我的新pos是351,所以dx是1.這很簡單。但現在在你的方法中,我將把新的pos存儲在最後一個pos(351)var中,並從最後一個pos減去下一個新的pos(352),並且仍然得到1.在我的方法中,如果我將保存第一個pos (350),只有那個,我會從最後一個減去每個新的pos。所以我會知道從我最後的位置確切的偏移量... – Elad 2012-01-11 12:57:39