溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JS中手機端touch事件如何計算滑動距離

發(fā)布時間:2021-07-20 11:31:32 來源:億速云 閱讀:169 作者:小新 欄目:web開發(fā)

這篇文章主要為大家展示了“JS中手機端touch事件如何計算滑動距離”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“JS中手機端touch事件如何計算滑動距離”這篇文章吧。

具體如下:

計算手勢在手機屏幕上滑動時,手勢滑動的距離,代碼如下:

function wetherScroll(){
    var startX = startY = endX =endY =0;
    var body=document.getElementsByTagName("body");
    body.bind('touchstart',function(event){
      var touch = event.targetTouches[0];
      //滑動起點的坐標
      startX = touch.pageX;
      startY = touch.pageY;
      // console.log("startX:"+startX+","+"startY:"+startY);
    });
    body.bind("touchmove",function(event){
      var touch = event.targetTouches[0];
      //手勢滑動時,手勢坐標不斷變化,取最后一點的坐標為最終的終點坐標
        endX = touch.pageX;
        endY = touch.pageY;
        // console.log("endX:"+endX+","+"endY:"+endY);
    })
    body.bind("touchend",function(event){
      var distanceX=endX-startX,
        distanceY=endY - startY;
        // console.log("distanceX:"+distanceX+","+"distanceY:"+distanceY);
        //移動端設備的屏幕寬度
        var clientHeight; =document.documentElement.clientHeight;
        // console.log(clientHeight;*0.2);
        //判斷是否滑動了,而不是屏幕上單擊了
        if(startY!=Math.abs(distanceY)){
 //在滑動的距離超過屏幕高度的20%時,做某種操作
          if(Math.abs(distanceY)>clientHeight*0.2){
 //向下滑實行函數(shù)someAction1,向上滑實行函數(shù)someAction2
          distanceY <0 ? someAction1():someAction2();
        }
        }
        startX = startY = endX =endY =0;
    })
}

以上是“JS中手機端touch事件如何計算滑動距離”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI