jquery——移動端touch事件


首先為了防止事件觸發默認行為,我們需要去禁止,安全的禁止方法:

// 判斷默認行為是否可以被禁用
    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();

});

 

移動開始和結束的坐標獲取:

startX = e.originalEvent.changedTouches[0].pageX;

startY = e.originalEvent.changedTouches[0].pageY;

moveEndX = e.originalEvent.changedTouches[0].pageX;

moveEndY = e.originalEvent.changedTouches[0].pageY;

 

樣例:

$("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.2

 

對應pc端鼠標操作:

touchstart  ——>   mousedown

touchend  ——> mouseup touchmove ——> mousemove


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM