移动端 触摸事件 ontouchstartontouchmoveontouchendontouchcancel

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了移动端 触摸事件 ontouchstartontouchmoveontouchendontouchcancel相关的知识,希望对你有一定的参考价值。

http://www.cnblogs.com/foolisher/p/5412723.html

http://blog.csdn.net/b7995547/article/details/48951761

http://www.cnblogs.com/koukouyifan/p/4066567.html

css device-width如何在js中获取

 

0,js判断是手机还是pc:

function IsPC() {
var userAgentInfo = navigator.userAgent;
var Agents = ["android", "iPhone",
"SymbianOS", "Windows Phone",
"iPad", "iPod"];
var flag = true;
for (var v = 0; v < Agents.length; v++) {
if (userAgentInfo.indexOf(Agents[v]) > 0) {
flag = false;
break;
}
}
return flag;
}

var flag = IsPC(); //true为PC端,false为手机端

1、Touch事件简介

pc上的web页面鼠标会产生onmousedown、onmouseup、onmouseout、onmouseover、onmousemove的事件,但是在移动终端如iphone、ipod Touch、ipad上的web页面触屏时会产生ontouchstart、ontouchmove、ontouchend、ontouchcancel事件,分别对应了触屏开始、拖拽及完成触屏事件和取消。
当按下手指时,触发ontouchstart;
当移动手指时,触发ontouchmove;
当移走手指时,触发ontouchend。
当一些更高级别的事件发生的时候(如电话接入或者弹出信息)会取消当前的touch操作,即触发ontouchcancel。一般会在ontouchcancel时暂停游戏、存档等操作。
 
2、Touch事件与Mouse事件的出发关系

在触屏操作后,手指提起的一刹那(即发生ontouchend后),系统会判断接收到事件的element的内容是否被改变,如果内容被改变,接下来的事件都不会触发,如果没有改变,会按照mousedown,mouseup,click的顺序触发事件。特别需要提到的是,只有再触发一个触屏事件时,才会触发上一个事件的mouseout事件

以上是关于移动端 触摸事件 ontouchstartontouchmoveontouchendontouchcancel的主要内容,如果未能解决你的问题,请参考以下文章

移动端 触屏事件 触摸事件对象

移动端触摸(touch)事件

移动端js触摸事件大全

移动端常用触摸事件以及常用坐标

移动端js触摸事件大全

移动端JS 触摸事件基础