首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【如果你要学JS XIV】—— 移动常用事件-移动touch触摸事件

导绪移动浏览器兼容性较好,不需要考虑JS的兼容性问题,可以放心的使用原生JS书写效果,但是移动也有自己独特的地方。如触屏事件touch (也称触摸事件) , Android和IOS都有。...console.log('我摸够了'); }) 2.触屏事件TouchEvent是一类描述手指在触摸平面 (触摸屏、触摸板等)的状态变化的事件。...这类事件用于描述一个或多个触点,使开发者可以检测触点的移动,触点的加和减少,等等 touchstart、touchmove、 touchend 三个事件都会各自有事件对象。...因为平时我们都是给元素注册触摸事件,所以常用targetTocuhes3.TouchEvent触摸事件对象touches 正在触摸屏幕的所有于指的列衣,targetTouches 正在触摸当前DOM元素的手指列表如果侦听的是一个...,然后用盒子原来的位置+手指移动的距离4.手指移动的距离 = 手指滑动中的位置 - 手指刚开始触摸的位置<!

45300

js移动中touch事件

触摸事件是在移动设备(如智能手机或平板电脑)上查看页面时触发的事件。 它们允许您跟踪多点触摸事件。...我们有4个触摸事件: touchstart 触摸事件已经启动(触摸表面) touchend 一个触摸事件已经结束(表面不再被触摸) touchmove 触摸移动手指(或任何接触设备的东西)在表面移动 touchcancel...触摸事件已被取消 每当一个触摸事件发生,会触发一个触摸事件: const link = document.getElementById('my-link') link.addEventListener...('touchstart', event => { // touch event started }) 以下是我们可以访问该事件的所有属性: identifier 标识符此特定事件的唯一标识符。...用于跟踪多点触摸事件。相同的手指=相同的标识符。

8.8K20
您找到你想要的搜索结果了吗?
是的
没有找到

HTML5移动开发的常用触摸事件

HTML5移动开发的常用触摸事件 h5开发手机是经常会有触摸事件和滑动事件 HTML5中新添加了很多事件,但是由于他们的兼容问题不是很理想,应用实战性不是太强,所以在这里基本省略...今天为大家介绍的事件主要是触摸事件:touchstart、touchmove和touchend。   ...因为iOs设备既没有鼠标也没有键盘,所以在为移动Safari浏览器开发交互性网页的时候,PC的鼠标和键盘事件是不够用的。   ...在iPhone 3Gs发布的时候,其自带的移动Safari浏览器就提供了一些与触摸(touch)操作相关的新事件。随后,Android上的浏览器也实现了相同的事件。...除了常见的DOM属性,触摸事件还包含下面三个用于跟踪触摸的属性。   touches:表示当前跟踪的触摸操作的touch对象的数组。

1.5K10

移动前端常见的触摸相关事件touch、tap、swipe等整理

前端的很多事件在PC和浏览器可公用,但有些事件却只在移动产生,如触摸相关的事件 本文整理了移动常见的一些事件,包括原生支持的click、touch、tap、swipe事件,也有定义型的gesture...手势事件(目前只是一个概念,使用的时候需封装模拟) 使用到的是移动的Chrome浏览器,本文只对该浏览器进行调试,其他浏览器暂未考虑到 一、事件定义及分类 1. click事件 单击事件,类似于PC的...click,但在移动中,连续click的触发有200ms ~ 300ms的延迟 2. touch类事件 触摸事件,有touchstart touchmove touchend touchcancel...四种之分 touchstart:手指触摸到屏幕会触发 touchmove:当手指在屏幕上移动时,会触发 touchend:当手指离开屏幕时,会触发 touchcancel:可由系统进行的触发,比如手指触摸屏幕的时候...2) 查看触发的事件对象 简单地修改,将事件监听中第三个参数置为true,输出完整事件对象 addEvent(one, 'tap click touchstart touchmove touchend

2K20

JS篇(028)-移动 click 事件、touch 事件、tap 事件的区别

参考答案: 1.click 事件移动会有 200-300ms 的延迟,主要原因是苹果手机在设计时,考虑到用户在浏览网页时需要放大,所以,在用户点击的 200-300ms 之后,才触发 click,...2.touch 事件是针对触屏手机上的触摸事件。现今大多数触屏手机 webkit 内核提供了 touch 事件的监听,让开发者可以获取用户触摸屏幕时的一些信息。...mouseover mouseup 的触发 3.tap 事件移动,代替 click 作为点击事件,tap 事件被很多框架(如 zepto)封装,来减少这延迟问题, tap 事件不是原生的,所以是封装的...,如果移动,则不触发tap事件 isMove = false; // 在touchstart时记录开始的时间 ele.addEventListener('touchstart...document.getElementById('btn'); tap(btn, function() { alert('taped'); }); 拓展: 点透问题 如果我们在移动所有的

5.7K40

移动事件详解

关于移动事件的一些笔记 移动事件类型 touchstart事件 touchmove事件 touchend事件 移动事件对象 touches 屏幕上有几个触点 targetTouches...绑定事件的元素上有几个触点 changedTouches 在屏幕上 改变(位置移动 离开 进入 )的触点的个数(如果手指离开屏幕 只有changedTouched有值 其他都没有) 获取触点坐标 clientX...,我们把PC的网页放到了移动,苹果公司把PC的网页进行了缩放,发明了一种浏览缩放网页的处理方案 ,就是双击放大,第一次点击会延迟300ms左右,然后判断,如果有第二次点击,就是放大,如果没有,就是点击...console.time(“timer”)计时器开 console.timeEnd(‘timer’)计时器关 解决方法: 写上 viewport 设置就可以了 用fastClick 移动判断手指滑动方向...如果 终止点坐标减去起始点坐标大于0 那么是向 右 否则是向左滑 如果 竖直坐标的差值的绝对值 大于水平 就是竖直滑动 如果 终止点坐标减去起始点坐标大于0 那么是向 下 否则是向上滑 代码如下

93520

05移动事件

一、移动三大事件          1、手指按下     ontouchstart      2、手指触摸     ontouchmove           3、手指抬起     ontouchend...('touchstart', function(){}); 二、PC事件移动(出现的问题)      1、PC事件移动略慢,大概300ms左右      2、阻止PC事件 document.addEventListener...('touchstart', function(ev){ ev.preventDefault(); }); 作用与问题:                1、移动的点透     问题:当上层元素发生点击时...input 框不能触焦问题) txt.addEventListenr('touchstart', function(ev){ ev.stopPropagation(); }); 三、移动事件对象...:位于当前 DOM 元素上(当前dom元素之外的无法获取)的手指的列表      3、changedTouches:涉及当前事件的手指的一个列表      例子:移动无缝轮播切换

1.3K50

10-移动开发教程-移动事件

在前端的移动Web开发中,有一部分事件只在移动产生,如触摸相关的事件。接下来给大家简单总结一下移动事件。 1....移动特有的touch事件 由于移动设备大都具备触摸功能,所以移动浏览器都引入了触摸(touch)事件。...2.1 touch事件与click事件同时触发 在很多情况下,触摸事件和鼠标事件会同时被触发(目的是让没有对触摸设备优化的代码仍然可以在触摸设备上正常工作)。...它非常小,非常适合移动。 Zepto.js的touch模块中封装了手势相关的代码。...---- 参考文章: 移动web开发---Touch事件详解 MDN:TouchEvent 移动前端常见的触摸相关事件touch、tap、swipe等整理

6.7K80

10-移动开发教程-移动事件

在前端的移动Web开发中,有一部分事件只在移动产生,如触摸相关的事件。接下来给大家简单总结一下移动事件。 1....移动特有的touch事件 由于移动设备大都具备触摸功能,所以移动浏览器都引入了触摸(touch)事件。...2.1 touch事件与click事件同时触发 在很多情况下,触摸事件和鼠标事件会同时被触发(目的是让没有对触摸设备优化的代码仍然可以在触摸设备上正常工作)。...它非常小,非常适合移动。 Zepto.js的touch模块中封装了手势相关的代码。...---- 参考文章: 移动web开发---Touch事件详解 MDN:TouchEvent 移动前端常见的触摸相关事件touch、tap、swipe等整理

6.3K70

移动】touch事件及穿透事件

苹果的解决方案: 方案一:双指进行缩放 方案二:在屏幕上双击进行放大(单击300ms后,再单击才算双击),造成了,移动端点击事件,300ms 延迟的问题 解决方案,就是使用touch事件来替代 移动新增...touch事件 --- 只能使用现代事件进行添加 touchstart: 触摸开始 touchmove: 触摸移动 touchend: 触摸结束 touchcancel:touch 取消,如来电等...【扩展】:移动touch、click、tap的区别 http://t.zoukankan.com/luo1240465012-p-9450627.html 添加touch 事件 代码如下: <script...,不管touchmove , touchend 是否移出开始触摸的元素,e.target都是开始时触摸的元素dom....e.preventDefault(); 方法二:吃掉touch之后的click, 使用计时器,让touch后延迟350ms再隐藏蒙层 方法三:使用fastclick.js;可以直接写click事件

1.9K10

移动」touch事件,touchEvent对象

区别有: PC 一个电脑只能有一个鼠标,而移动有多点触摸。...PC 添加效果使用 mouseup、mousedown、mousemove,而移动使用的 touchstart、touchmove、touchend 。...一、touch事件类型 touchstart - 手指触摸屏幕,在元素上按下时触发 touchmove - 手指移动,在元素上按下之后屏幕上任意移动 tounchend - 手指在元素上按下之后,屏幕任意位置抬起时触发...touch:事件只能在移动使用,mouse :事件只能在 PC 使用。 touchstart: 只能在绑定元素内按下触发,touchmove、touchend可以在屏幕的任意位置执行。...多点触发:多个手指同时触摸屏幕,进行旋转、缩放、放大、拖拽等操作。 很多情况下,触摸事件跟鼠标事件会同时触发,目的是为了在pc运行的时候,没有触摸设备可以使用鼠标代替。

1.1K30

移动」touch事件,touchEvent对象

区别有: PC 一个电脑只能有一个鼠标,而移动有多点触摸。...PC 添加效果使用 mouseup、mousedown、mousemove,而移动使用的 touchstart、touchmove、touchend 。...一、touch事件类型 touchstart - 手指触摸屏幕,在元素上按下时触发 touchmove - 手指移动,在元素上按下之后屏幕上任意移动 tounchend - 手指在元素上按下之后,屏幕任意位置抬起时触发...touch:事件只能在移动使用,mouse :事件只能在 PC 使用。 touchstart: 只能在绑定元素内按下触发,touchmove、touchend可以在屏幕的任意位置执行。...多点触发:多个手指同时触摸屏幕,进行旋转、缩放、放大、拖拽等操作。 很多情况下,触摸事件跟鼠标事件会同时触发,目的是为了在pc运行的时候,没有触摸设备可以使用鼠标代替。

98230

移动」touch事件,touchEvent对象

区别有: PC 一个电脑只能有一个鼠标,而移动有多点触摸。...PC 添加效果使用 mouseup、mousedown、mousemove,而移动使用的 touchstart、touchmove、touchend 。...一、touch事件类型 touchstart - 手指触摸屏幕,在元素上按下时触发 touchmove - 手指移动,在元素上按下之后屏幕上任意移动 tounchend - 手指在元素上按下之后,屏幕任意位置抬起时触发...touch:事件只能在移动使用,mouse :事件只能在 PC 使用。 touchstart: 只能在绑定元素内按下触发,touchmove、touchend可以在屏幕的任意位置执行。...多点触发:多个手指同时触摸屏幕,进行旋转、缩放、放大、拖拽等操作。 很多情况下,触摸事件跟鼠标事件会同时触发,目的是为了在pc运行的时候,没有触摸设备可以使用鼠标代替。

1.8K20

移动的touch事件处理

在iPhone 3Gs发布的时候,其自带的移动Safari浏览器就提供了一些与触摸(touch)操作相关的新事件。随后,Android上的浏览器也实现了相同的事件。...关于这个事件的确切出发时间,文档中并没有具体说明,咱们只能去猜测了。触摸事件还包含下面三个用于跟踪触摸的属性       touches:表示当前跟踪的触摸操作的touch对象的数组。  ...参考文章:http://www.zhangyunling.com/235.html(touch事件简要的探讨一下移动 touch 事件处理几个坑,以及相应的简单处理方法。...tap 事件的判定一个正确的 tap 事件应当满足一下条件:用户手指从屏幕移开时触发不能在用户移动手指时触发(防止和滚动、拖拽事件的冲突)多个手指同时触摸屏幕时不能触发不应该触发 click 事件具体实现代码可以参考...转载本站文章《移动的touch事件处理》,请注明出处:https://www.zhoulujun.cn/html/webfront/SGML/html5/2017_0216_7950.html

1.5K20
领券