JavaScript监听触摸事件代码实例

  

这篇文章主要介绍了JavaScript监听触摸事件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

  

监听         & lt; !DOCTYPE html>   & lt; html>      & lt; head>   & lt;元charset=皍tf - 8”比;   & lt;元name=笆哟啊蹦谌?俺跏?1,最大范围=1,user-scalable=不”比;   & lt; title> Wsscat滑动事件Demo   & lt;/head>      & lt; body>   & lt; article>上下左右滑动& lt;/article>   & lt;/body>   & lt; style>   * {   保证金:0;   填充:0;   }      {条   background - color: # 000000;   宽度:100%;   身高:100 px;   text-align:中心;   行高:100 px;   颜色:# FFFFFF;   }   & lt;/style>   & lt; script>   (函数(){   var触摸={};   函数方向(startX changeX、startY changeY) {   返回数学。abs (startX - changeX)在=数学。abs (startY - changeY) & # 63;(startX - changeX比;0 & # 63;“左”:“正确的”):(startY - changeY比;0 & # 63;“了”:“下来”)   }   document.getElementsByTagName(身体的)[0]。addEventListener (touchstart,函数(e) {   联系。startY=e.targetTouches [0] .pageY;   联系。startX=e.targetTouches [0] .pageX;//控制台。日志(“点击时的X坐标“+ nStartX +”和Y坐标“+ nStartY);   });   document.getElementsByTagName(身体的)[0]。addEventListener (touchmove,函数(e) {   联系。whenChangY=e.changedTouches [0] .pageY;   联系。whenChangX=e.changedTouches [0] .pageX;//控制台。日志(“滑动时的X坐标“+ nWhenChangX +”和Y坐标“+ nWhenChangY);   })   document.getElementsByTagName(身体的)[0]。addEventListener (touchend,函数(e) {   联系。changY=e.changedTouches [0] .pageY;   联系。changX=e.changedTouches [0] .pageX;//控制台。日志(“滑动后的X坐标“+ nChangX +”和Y坐标“+ nChangY);   var swDirection=方向(联系。startX,联系。changX,联系。startY touch.changY);   console.log (swDirection);   })   }) ()   & lt;/script>      & lt;/html>      

触摸         & lt; !——touchstart   在触摸开始时触发事件   touchend   在触摸结束时触发事件   touchmove   在触摸期间时触发事件——比;      & lt; !DOCTYPE html>   & lt; html lang=坝τ谩眂lass=皀o-js”比;      & lt; head>   & lt;元http-equiv=澳谌堇嘈汀北?   & lt;元内容=" text/html;charset=utf - 8”比;   & lt;元charset=皍tf - 8”比;   & lt; title> & lt;/title>   & lt;元name=笆哟啊蹦谌?俺跏?1,最大范围=1,user-scalable=不”比;   & lt;元名称=癴ormat-detection”内容=暗缁?不”比;   & lt;元名称=癴ormat-detection”内容=坝始?不”比;   & lt;链接rel="样式表" type=" text/css " href=" https://www.yisu.com/zixun/css/reset.css " rel=巴獠縩ofollow”/比;   & lt;/head>      & lt; body>   & lt; div class="页面page-1-1页当前“比;   & lt; div类="包装"比;   & lt;/div>   & lt;/div>   & lt; div类=耙趁鎝age-2-1隐藏”比;   & lt; div类="包装"比;   & lt;/div>   & lt;/div>   & lt; div类=耙趁鎝age-2-2隐藏”比;   & lt; div类="包装"比;   & lt;/div>   & lt;/div>   & lt; div类=耙趁鎝age-3-1隐藏”比;   & lt; div类="包装"比;   & lt;/div>   & lt;/div>   & lt;/body>   & lt; script>   (函数(){   现在var={   行:1、   上校:1   },   去年={   行:0   上校:0   };   const向={   :1,   右:2   :3,   左:4   };   var isAnimating=false;   var触摸={};   函数方向(startX changeX、startY changeY) {   返回数学。abs (startX - changeX)在=数学。abs (startY - changeY) & # 63;(startX - changeX比;0 & # 63;“左”:“正确的”):(startY - changeY比;0 & # 63;“了”:“下来”)   }   document.getElementsByTagName(身体的)[0]。addEventListener (touchstart,函数(e) {   联系。startY=e.targetTouches [0] .pageY;   联系。startX=e.targetTouches [0] .pageX;//控制台。日志(“点击时的X坐标“+ nStartX +”和Y坐标“+ nStartY);   });   document.getElementsByTagName(身体的)[0]。addEventListener (touchmove,函数(e) {   联系。whenChangY=e.changedTouches [0] .pageY;   联系。whenChangX=e.changedTouches [0] .pageX;//控制台。日志(“滑动时的X坐标“+ nWhenChangX +”和Y坐标“+ nWhenChangY);   })   document.getElementsByTagName(身体的)[0]。addEventListener (touchend,函数(e) {   联系。changY=e.changedTouches [0] .pageY;   联系。changX=e.changedTouches [0] .pageX;//控制台。日志(“滑动后的X坐标“+ nChangX +”和Y坐标“+ nChangY);   var swDirection=方向(联系。startX,联系。changX,联系。startY touch.changY);   console.log (swDirection);//以回调的方法来写这个动作   如果(swDirection=='了'){   swipeUp(函数(){   如果(isAnimating)返回;   最后一次。行=now.row;   最后一次。坳=now.col;   如果(现在。坳==2){   返回;   }else if(去年。行!=6){   现在。行=P? 1;   现在。坳=1;   pageMove (towards.up);   }   })   }   如果(swDirection==跋吕础?{   如果(isAnimating)返回;   最后一次。行=now.row;   最后一次。坳=now.col;   如果(现在。坳==2){   返回;   }else if(去年。行!=1){   现在。行=P? 1;   现在。坳=1;   pageMove (towards.down);   }   }   如果(swDirection=='左'){   如果(isAnimating)返回;   最后一次。行=now.row;   最后一次。坳=now.col;   如果最后一次。行比;1,,最后一次。行& lt;5,,最后一次。坳==1){   现在。行=last.row;   现在。坳=2;   pageMove (towards.left);   }   }   如果(swDirection==返摹?{   如果(isAnimating)返回;   最后一次。行=now.row;   最后一次。坳=now.col;   如果最后一次。行比;1,,最后一次。行& lt;5,,最后一次。坳==2){   现在。行=last.row;   现在。坳=1;   pageMove (towards.right);   }   }   })   swipeUp(回调函数){   回调()   }   函数hasClass (obj, cls) {   obj.className返回。(新RegExp匹配((\ \ | ^)”+ cls + (\ \ | $)));   }   console.log (window.document)   最好选择用addClass (obj替代函数,cls) {   如果(!hasClass (obj, cls)) obj。类名+=" + cls;   }   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

JavaScript监听触摸事件代码实例