首先爲了防止事件觸發默認行爲,咱們須要去禁止,安全的禁止方法:jquery
// 判斷默認行爲是否能夠被禁用 if (e.cancelable) { // 判斷默認行爲是否已經被禁用 if (!e.defaultPrevented) { e.preventDefault(); } }
三個事件:安全
$("body").on("touchstart", function(e) { e.preventDefault(); }); $("body").on("touchend", function(e) { e.preventDefault(); }); $("body").on("touchmove", function(e) { e.preventDefault(); });
移動開始和結束的座標獲取:spa
startX = e.originalEvent.changedTouches[0].pageX; startY = e.originalEvent.changedTouches[0].pageY; moveEndX = e.originalEvent.changedTouches[0].pageX; moveEndY = e.originalEvent.changedTouches[0].pageY;
樣例:code
$("body").on("touchstart", function(e) { e.preventDefault(); startX = e.originalEvent.changedTouches[0].pageX, startY = e.originalEvent.changedTouches[0].pageY; }); $("body").on("touchmove", function(e) { e.preventDefault(); moveEndX = e.originalEvent.changedTouches[0].pageX, moveEndY = e.originalEvent.changedTouches[0].pageY, X = moveEndX - startX, Y = moveEndY - startY; if ( X > 0 ) { alert('向左滑動'); } });
注:以上$使用基於jquery1.7.2blog
對應pc端鼠標操做:事件
touchstart ——> mousedown
touchend ——> mouseup touchmove ——> mousemove