移动端事件

移动端事件:

①onclick:   移动端也可以使用onclick事件,但是查阅资料上说会有300ms的延迟,究竟是不是有待考究。

②ontouchstart: 相当于PC端的onmousedown,详细可参照先前写的文档--“事件”。下同

③ontouchend:  相当于PC端的onmouseup.

④ontouchmove: 等价于PC的 onmousemove。注意:在调用该事件的时候,默认网页会跟着滑动,为了解决这一问题,我们在事件的内部加上一条语句:return false 来组织默认事件。

⑤ontouchcancel :取消触摸的时候触发。比如来电话、信息等,系统中止触摸事件的时候会触发,每个手机触发方式不一样。

移动端事件对象:

每个触屏事件都包含事件对象。事件对象常用的有三个属性

touches        屏幕上所有的手指列表

targetTouches  元素内的所有手指列表

changedTouches  改变了状态的手指列表



两个移动端设备事件:加速计(测当前重力加速度)、 陀螺仪(测当前所处方位,用来定位)。

备注:说不清楚,直接上代码。

// 首先判断手机是否支持加速计和陀螺仪

if (window.DeviceMotionEvent){

redDiv.innerHTML = "支持";

// 动态的重力加速度

window.ondevicemotion = function(ev){

//accelerationIncludingGravity 包括了X、Y、Z的三个方向的重力加速度。

var evObj = window.event || ev;

var x = parseInt(evObj.accelerationIncludingGravity.x);

var y = parseInt(evObj.accelerationIncludingGravity.y);

var z = parseInt(evObj.accelerationIncludingGravity.z);

blueDiv.innerHTML = "x:" + x + "" + "y:" + y + "" + "z:" + z;

}

// 静态的手机朝向

window.ondeviceorientation = function(ev){

var evObj = window.event || ev;

var alpha = parseInt(evObj.alpha);

var beta = parseInt(evObj.beta);

var gamma = parseInt(evObj.gamma);

blueDiv.innerHTML = "alpha:" + alpha + "" + "beta:" + beta + "" + "gamma:" + gamma;

}

} else {

redDiv.innerHTML = "换个手机吧";

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值