手机
当前位置:查字典教程网 >网页设计 >HTML5教程 >html5摇一摇代码优化包括DeviceMotionEvent等等
html5摇一摇代码优化包括DeviceMotionEvent等等
摘要:首先对DeviceMotionEvent进行优化;去除无用的代码,重新封装DeviceMotionEvenif(window.DeviceM...

首先对DeviceMotionEvent进行优化;

去除无用的代码,重新封装DeviceMotionEven

if(window.DeviceMotionEvent) {

var speed = 25;//定义一个数值

var x = y = z = lastX = lastY = lastZ = 0;//重置所有数值

window.addEventListener('devicemotion', function(){

var acceleration =event.accelerationIncludingGravity;//将传感值赋给acceleration

x = acceleration.x;

y = acceleration.y;

z = acceleration.z;

if(Math.abs(x-lastX) > speed || Math.abs(y-lastY) > speed ) {

// TODO:在此处可以实现摇一摇之后所要进行的数据逻辑操作

donghua();

}

lastX = x;

lastY = y;

lastZ = z;

}, false);

}

由于实际项目中有很多需求无法很好的实现,

比如:动画不执行完毕就不能继续执行DeviceMotionEvent事件;

所以做了进一步优化;

var f=1;

function donghua(){

//动画事件

$(".img").animate({left:'0',opacity:'1'},700,function(){f=1;});

});

if(window.DeviceMotionEvent) {

var speed = 25;//定义一个数值

var x = y = z = lastX = lastY = lastZ = 0;//重置所有数值

window.addEventListener('devicemotion', function(){

var acceleration =event.accelerationIncludingGravity;//将传感值赋给acceleration

x = acceleration.x;

y = acceleration.y;

z = acceleration.z;

if(Math.abs(x-lastX) > speed || Math.abs(y-lastY) > speed ) {

// TODO:在此处可以实现摇一摇之后所要进行的数据逻辑操作

if(f==1){

donghua();

f=0;

}

}

lastX = x;

lastY = y;

lastZ = z;

}, false);

}

现在就完美了

【html5摇一摇代码优化包括DeviceMotionEvent等等】相关文章:

简单html5代码获取地理位置

html5教程制作简单画板代码分享

html5指南-4.使用Geolocation实现定位功能

html5开发之viewport使用

Html5+JS实现手机摇一摇功能

HTML5 Video标签的属性、方法和事件汇总介绍

Html5大文件断点续传实现方法

html5 桌面提醒:Notifycations应用介绍

html5读取本地文件示例代码

HTML5 canvas基本绘图之图形变换

精品推荐
分类导航