JS实现移动端判断上拉和下滑功能

作者:静乐想 时间:2023-07-13 22:05:21 

一、手指触屏,利用touchstart和touchend计算前后滑动距离,判断是上拉还是下滑。

二、js中距离:pageY、clientY、offsetY的区别:

       offsetY:相对于父节点的偏移距离。

       clientY:相对于浏览器,滚轮距离不算在内。

       pageY:相对于浏览器,滚轮滚动的距离算在内;本例中,用pageY,触屏时记录位置-startY,结束时记录-endY,两个相减以正负判断是上移还是下滑。 

三、touchstart有touches属性,touchend有changedTouches属性,两个属性中分别有pageY、pageX信息。


//滑动处理
   var startX, startY;
   document.addEventListener('touchstart',function (ev) {
     startX = ev.touches[0].pageX;
     startY = ev.touches[0].pageY;
   }, false);
   document.addEventListener('touchend',function (ev) {
     var endX, endY;
     endX = ev.changedTouches[0].pageX;
     endY = ev.changedTouches[0].pageY;
     var direction = GetSlideDirection(startX, startY, endX, endY);
     switch(direction) {
       case 0:
           alert("无操作");
         break;
       case 1:
         // 向上
         alert("up");
         break;
       case 2:
         // 向下
         alert("down");
         break;
default:
     }
   }, false);

四、


function GetSlideDirection(startX, startY, endX, endY) {
     var dy = startY - endY;
     //var dx = endX - startX;
     var result = 0;
     if(dy>0) {//向上滑动
       result=1;
     }else if(dy<0){//向下滑动
       result=2;
     }
     else
     {
       result=0;
     }
     return result;
   }

总结

以上所述是小编给大家介绍的JS实现移动端判断上拉和下滑功能,希望对大家有所帮助

来源:http://blog.csdn.net/zhengyanan110/article/details/76804730

标签:js,移动端,上拉,下滑
0
投稿

猜你喜欢

  • 把论坛从ACCESS转成SQL版本

    2009-04-13 15:59:00
  • asp常用的SQL命令操作

    2007-09-29 12:21:00
  • 显示/隐藏引出的CSS Bug

    2010-10-20 20:13:00
  • 使用有趣的自定义标记布局页面

    2012-07-12 01:29:03
  • 正则表达式学习笔记

    2008-04-15 07:44:00
  • CSS自定义属性Expression

    2011-04-29 14:17:00
  • 想用户所想(感受亚马逊的设计)

    2007-08-26 17:09:00
  • Python命令行解析器argparse详解

    2023-06-14 01:08:14
  • 动网论坛验证码改进 加法验证码(ASPJpeg版)

    2011-04-10 10:44:00
  • 利用mergeAttributes设置name属性

    2009-12-12 18:48:00
  • 丰富段落里的标签

    2008-03-16 14:11:00
  • 访问javascript私有变量

    2010-01-19 13:56:00
  • css实现图片倒影效果

    2007-11-05 18:29:00
  • Asp Oracle存储过程返回结果集的代码

    2011-04-10 11:16:00
  • 动态载入asp树源码

    2007-09-06 19:34:00
  • 彻底终结浏览器Cache页面的解决方案

    2008-04-21 15:10:00
  • PHP将amr音频文件转换为mp3格式的操作细节

    2023-06-15 22:20:35
  • python中的global关键字的使用方法

    2023-07-15 13:26:50
  • asp如何将产生的密码记录并发送给用户?

    2009-11-26 20:50:00
  • PHP实时统计中文字数和区别

    2023-07-13 10:44:01
  • asp之家 网络编程 m.aspxhome.com