JS手机端touch事件计算滑动距离的方法示例


Posted in Javascript onOctober 26, 2017

本文实例讲述了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){
 //向下滑实行函数someAction1,向上滑实行函数someAction2
          distanceY <0 ? someAction1():someAction2();
        }
        }
        startX = startY = endX =endY =0;
    })
}

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
关于document.cookie的使用javascript
Apr 11 Javascript
JavaScript 利用Cookie记录用户登录信息
Dec 08 Javascript
jQuery 前的按键判断代码
Mar 19 Javascript
JQuery 1.3.2以上版本中出现pareseerror错误的解决方法
Jan 11 Javascript
jquery 滚动条事件简单实例
Jul 12 Javascript
js判断上传文件的类型和大小示例代码
Oct 18 Javascript
AngularJS 作用域详解及示例代码
Aug 17 Javascript
利用JQuery阻止事件冒泡
Dec 01 Javascript
深入学习jQuery中的data()
Dec 22 Javascript
vue实现全选和反选功能
Aug 31 Javascript
Vue 动态路由的实现及 Springsecurity 按钮级别的权限控制
Sep 05 Javascript
解决vue-pdf查看pdf文件及打印乱码的问题
Nov 04 Javascript
JavaScript实现二叉树的先序、中序及后序遍历方法详解
Oct 26 #Javascript
JavaScript实现树的遍历算法示例【广度优先与深度优先】
Oct 26 #Javascript
详述 Sublime Text 打开 GBK 格式中文乱码的解决方法
Oct 26 #Javascript
node.js的exports、module.exports与ES6的export、export default深入详解
Oct 26 #Javascript
详解Webstorm 新建.vue文件支持高亮vue语法和es6语法
Oct 26 #Javascript
Node.js中环境变量process.env的一些事详解
Oct 26 #Javascript
Sublime Text新建.vue模板并高亮(图文教程)
Oct 26 #Javascript
You might like
php 从数据库提取二进制图片的处理代码
2009/09/09 PHP
FastCGI 进程意外退出造成500错误
2015/07/26 PHP
PHP网页缓存技术优点及代码实例
2020/07/29 PHP
IE6浏览器下resize事件被执行了多次解决方法
2012/12/11 Javascript
angularjs自定义ng-model标签的属性
2016/01/21 Javascript
深入理解angularjs过滤器
2016/05/25 Javascript
又一款js时钟!transform实现时钟效果
2016/08/15 Javascript
AngularJS中过滤器的使用与自定义实例代码
2016/09/17 Javascript
bootstrap css样式之表单
2017/01/19 Javascript
VUE2 前端实现 静态二级省市联动选择select的示例
2018/02/09 Javascript
详解Node使用Puppeteer完成一次复杂的爬虫
2018/04/18 Javascript
Nuxt.js SSR与权限验证的实现
2018/11/21 Javascript
如何基于javascript实现贪吃蛇游戏
2020/02/09 Javascript
Vue2.4+新增属性.sync、$attrs、$listeners的具体使用
2020/03/08 Javascript
vue中提示$index is not defined错误的解决方式
2020/09/02 Javascript
Python常见工厂函数用法示例
2018/03/21 Python
python接口自动化(十六)--参数关联接口后传(详解)
2019/04/16 Python
PyQt4编程之让状态栏显示信息的方法
2019/06/18 Python
django认证系统 Authentication使用详解
2019/07/22 Python
基于tensorflow指定GPU运行及GPU资源分配的几种方式小结
2020/02/03 Python
Python输出指定字符串的方法
2020/02/06 Python
Python猜数字算法题详解
2020/03/01 Python
matplotlib 使用 plt.savefig() 输出图片去除旁边的空白区域
2021/01/05 Python
三维科技面试题
2013/07/27 面试题
商业活动邀请函
2014/02/04 职场文书
财务支持类个人的自我评价
2014/02/14 职场文书
优秀党员获奖感言
2014/02/18 职场文书
学习两会精神心得范文
2014/03/17 职场文书
婚内房产协议书范本
2014/10/02 职场文书
2014年辅导员工作总结
2014/11/18 职场文书
2014年市场部工作总结
2014/11/25 职场文书
亲属关系公证书样本
2015/01/23 职场文书
2016年小学植树节活动总结
2016/03/16 职场文书
python如何正确使用yield
2021/05/21 Python
十大最帅动漫男主 碓冰拓海上榜,第一是《灌篮高手》男主角
2022/03/18 日漫
基于Python编写简易版的天天跑酷游戏的示例代码
2022/03/23 Python