js实现滑动触屏事件监听的方法
网络编程 2021-07-04 21:47www.168986.cn编程入门
这篇文章主要介绍了js实现滑动触屏事件监听的方法,适用于手机端触屏滑动事件的监听技巧,非常具有实用价值,需要的朋友可以参考下
本文实例讲述了js实现滑动触屏事件监听的方法。分享给大家供大家参考。具体实现方法如下
function span_move_fun(){ var span = document.getElementById("move_k"); var span_left = $(span).offset().left; var span_ = $(span).offset().; var start_left = $(span).offset().left; var start_ = $(span).offset().; span.addEventListener('touchstart', function(event) { event.preventDefault(); if (event.targetTouches.length == 1) { var touch = event.targetTouches[0]; span.style.position = "absolute"; span_ = $(this).offset().; span_left = $(this).offset().left; start_ = touch.pageY start_left = touch.pageX var left = parseFloat(touch.pageX - start_left + span_left-30); var = parseFloat(touch.pageY - start_ + span_-73); span.style.left = String(left) + 'px'; span.style. = String() + 'px'; } }); span.addEventListener('touchmove', function(event) { event.preventDefault(); if (event.targetTouches.length == 1) { var touch = event.targetTouches[0]; span.style.position = "absolute"; var left = parseFloat(touch.pageX - start_left + span_left-30); var = parseFloat(touch.pageY - start_ + span_-73); span.style.left = String(left) + 'px'; span.style. = String() + 'px'; } }); span.addEventListener('touchend', function(event) { var touch = event.changedTouches[0]; if(parseFloat(touch.pageX - start_left + span_left-30) <= -5 || parseFloat(touch.pageX - start_left + span_left-30) >= 620 || parseFloat(touch.pageY - start_ + span_-73) <= -38 || parseFloat(touch.pageY - start_ + span_-73) >= 587){ span.style.left = String(span_left-30) + 'px'; span.style. = String(span_-73) + 'px'; } event.sPropagation(); }); }
js的左右滑动触屏事件,主要有三个事件touchstart,touchmove,touchend。这三个事件最重要的属性是 pageX和 pageY,表示X,Y坐标。
touchstart在触摸开始时触发事件
touchend在触摸结束时触发事件
touchmove这个事件比较奇怪,按道理在触摸到过程中不断激发这个事件才对,在我的 Android 1.5 中,在 touchstart 激发后激发一次,然后剩余的都和 touchend 差不多激发。
这三个事件都都有一个 timeStamp 的属性,查看 timeStamp 属性,可以看到顺序是 touchstart -> touchmove ->touchmove -> … -> touchmove ->touchend。
狼蚁网站SEO优化是一段代码实例
document.getElementsByTagName_r('body')[0].addEventListener('touchstart',function(e){ nStartY = e.targetTouches[0].pageY; nStartX = e.targetTouches[0].pageX; }); document.getElementsByTagName_r('body')[0].addEventListener('touchend',function(e){ nChangY = e.changedTouches[0].pageY; nChangX = e.changedTouches[0].pageX; });
PS:
1. touch事件跟click事件是不会被触发的。现在的移动设备做的比较好,已经把这个问题完美的避免掉了。
2. 注意触摸的开始和结束位置的位移大小。如果位移小过小应该不做任何动作。
PS这里再为大家提供一个关于JS事件的在线工具,归纳了JS常用的事件类型与函数功能
javascript事件与功能说明大全
希望本文所述对大家的javascript程序设计有所帮助。
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程