iphone、ipod Touch、ipad触屏时的js事件
2014-09-15 16:15
351 查看
1、Touch事件简介
pc上的web页面鼠 标会产生onmousedown、onmouseup、onmouseout、onmouseover、onmousemove的事件,但是在移动终端如 iphone、ipod Touch、ipad上的web页面触屏时会产生ontouchstart、ontouchmove、ontouchend、ontouchcancel 事件,分别对应了触屏开始、拖拽及完成触屏事件和取消。<span id="more-854"></span><br />
当按下手指时,触发ontouchstart
当移动手指时,触发ontouchmove;<br />
当移走手指时,触发ontouchend。<br />
当一些更高级别的事件发生的时候(如电话接入或者弹出信息)会取消当前的touch操作,即触发ontouchcancel。一般会在ontouchcancel时暂停游戏、存档等操作。</p>
<p>2、Touch事件与Mouse事件的出发关系<br />
在触屏操作后,手指提起的一刹那(即发生ontouchend后),系统会判断接收到事件的element的内容是否被改变,如果内容被改变,接下来的事 件都不会触发,如果没有改变,会按照mousedown,mouseup,click的顺序触发事件。特别需要提到的是,只有再触发一个触屏事件时,才会 触发上一个事件的mouseout事件。</p>
<p>3、gesture事件<br />
Gesture事件,包括手指点击(click),轻拂 (flick),双击(double-click),手指的分开、闭合(scale)、转动(rotate)等一切手指能在屏幕上做的事情,它只在有两根 或多根手指放在屏幕上的时候触发,事件处理函数中会得到一个GestureEvent类型的参数,它包含了手指的scale(两根移动过程中分开的比例) 信息和rotation(两根手指间连线转动的角度)信息。这个事件是对touch事件的更高层的封装,和touch一样,它同样包括 gesturestart,gesturechange,gestureend。<br
/>
gesture事件触发过程:<br />
Step 1、第一根手指放下,触发touchstart<br />
Step 2、第二根手指放下,触发gesturestart<br />
Step 3、触发第二根手指的touchstart<br />
Step 4、立即触发gesturechange<br />
Step 5、手指移动,持续触发gesturechange,就像鼠标在屏幕上移动的时候不停触发mousemove一样<br />
Step 6、第二根手指提起,触发gestureend,以后将不会再触发gesturechange<br />
Step 7、触发第二根手指的touchend<br />
Step 8、触发touchstart!注意,多根手指在屏幕上,提起一根,会刷新一次全局touch!重新触发第一根手指的touchstart<br />
Step 9、提起第一根手指,触发touchend</p>
pc上的web页面鼠 标会产生onmousedown、onmouseup、onmouseout、onmouseover、onmousemove的事件,但是在移动终端如 iphone、ipod Touch、ipad上的web页面触屏时会产生ontouchstart、ontouchmove、ontouchend、ontouchcancel 事件,分别对应了触屏开始、拖拽及完成触屏事件和取消。<span id="more-854"></span><br />
当按下手指时,触发ontouchstart
当移动手指时,触发ontouchmove;<br />
当移走手指时,触发ontouchend。<br />
当一些更高级别的事件发生的时候(如电话接入或者弹出信息)会取消当前的touch操作,即触发ontouchcancel。一般会在ontouchcancel时暂停游戏、存档等操作。</p>
<p>2、Touch事件与Mouse事件的出发关系<br />
在触屏操作后,手指提起的一刹那(即发生ontouchend后),系统会判断接收到事件的element的内容是否被改变,如果内容被改变,接下来的事 件都不会触发,如果没有改变,会按照mousedown,mouseup,click的顺序触发事件。特别需要提到的是,只有再触发一个触屏事件时,才会 触发上一个事件的mouseout事件。</p>
<p>3、gesture事件<br />
Gesture事件,包括手指点击(click),轻拂 (flick),双击(double-click),手指的分开、闭合(scale)、转动(rotate)等一切手指能在屏幕上做的事情,它只在有两根 或多根手指放在屏幕上的时候触发,事件处理函数中会得到一个GestureEvent类型的参数,它包含了手指的scale(两根移动过程中分开的比例) 信息和rotation(两根手指间连线转动的角度)信息。这个事件是对touch事件的更高层的封装,和touch一样,它同样包括 gesturestart,gesturechange,gestureend。<br
/>
gesture事件触发过程:<br />
Step 1、第一根手指放下,触发touchstart<br />
Step 2、第二根手指放下,触发gesturestart<br />
Step 3、触发第二根手指的touchstart<br />
Step 4、立即触发gesturechange<br />
Step 5、手指移动,持续触发gesturechange,就像鼠标在屏幕上移动的时候不停触发mousemove一样<br />
Step 6、第二根手指提起,触发gestureend,以后将不会再触发gesturechange<br />
Step 7、触发第二根手指的touchend<br />
Step 8、触发touchstart!注意,多根手指在屏幕上,提起一根,会刷新一次全局touch!重新触发第一根手指的touchstart<br />
Step 9、提起第一根手指,触发touchend</p>
相关文章推荐
- iphone、ipod Touch、ipad触屏时的js事件
- iphone、ipod Touch、ipad触屏时的js事件
- 在Cocoa里用objective-c判断设备类型:iPhone, iPod Touch, iPad
- 每日分享 - 检测iPhone/iPod Touch/iPad设备类型
- 如何找到适合的iPhone,iPod Touch或iPad应用程序的崩溃日志
- iPhone/iPad/iPod touch编程时版本区分
- 检测iPhone/iPod Touch/iPad设备类型
- 在Cocoa里用objective-c判断设备类型:iPhone, iPod Touch, iPad
- 电子书下载:iOS Forensic Analysis: for iPhone, iPad and iPod Touch
- 检测iPhone/iPod Touch/iPad设备类型 .
- mmsplayer for ios 版本已经完成。支持iphone,ipod touch,ipad
- iOS平台iPhone iPad和iPod Touch开源应用游戏App源代码下载
- 在Cocoa里用objective-c判断设备类型:iPhone, iPod Touch, iPad
- 检测iPhone/iPod touch/iPad设备类型的代码
- 检测iPhone/iPod Touch/iPad设备类型
- いつでもどこでも本格的に麻雀&チュートリアルが充実!iPhone/iPod touch/iPad向け「雀龍門Mobile」をiPadで遊んでみました
- mmsplayer for ios 支持iphone ,ipad,ipod touch 版本已经完成。
- 在iPhone/iPad/iPod touch中使用ARM处理器的NEON技术
- 程序员致富大全-做iphone-ipad- ipod-touch开发的苹果App store