html5摇一摇代码优化包括DeviceMotionEvent等等


Posted in HTML / CSS onSeptember 01, 2014

首先对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);
}

现在就完美了
HTML / CSS 相关文章推荐
详解CSS3 弹性布局快速入门
Jun 06 HTML / CSS
收集的22款给力的HTML5和CSS3帮助工具
Sep 14 HTML / CSS
浅谈CSS3 box-sizing 属性 有趣的盒模型
Apr 02 HTML / CSS
使用css实现android系统的loading加载动画
Jul 25 HTML / CSS
详解rem 适配布局
Oct 31 HTML / CSS
html5/css3响应式页面开发总结
Oct 16 HTML / CSS
浅谈three.js中的needsUpdate的应用
Nov 12 HTML / CSS
HTML5中Canvas与SVG的画图原理比较
Jan 16 HTML / CSS
iframe与window.onload如何使用详解
May 07 HTML / CSS
css3实现背景图片半透明内容不透明的方法示例
Apr 13 HTML / CSS
css3 利用transform-origin 实现圆点分布在大圆上布局及旋转特效
Apr 29 HTML / CSS
HTML+CSS制作心跳特效的实现
May 26 HTML / CSS
Html5 FileReader实现即时上传图片功能实例代码
Sep 01 #HTML / CSS
html5定位获取当前位置并在百度地图上显示
Aug 22 #HTML / CSS
HTML5 transform三维立方体实现360无死角三维旋转效果
Aug 22 #HTML / CSS
html5 更新图片颜色示例代码
Jul 29 #HTML / CSS
Html5 语法与规则简要概述
Jul 29 #HTML / CSS
html5桌面通知(Web Notifications)实例解析
Jul 07 #HTML / CSS
HTML5实现WebSocket协议原理浅析
Jul 07 #HTML / CSS
You might like
php的header和asp中的redirect比较
2006/10/09 PHP
PHP 高手之路(一)
2006/10/09 PHP
php使用pdo连接并查询sql数据库的方法
2014/12/24 PHP
Laravel等框架模型关联的可用性浅析
2019/12/15 PHP
JQuery Study Notes 学习笔记(一)
2010/08/04 Javascript
javascript获取鼠标点击元素对象(示例代码)
2013/12/20 Javascript
JavaScript中this关键词的使用技巧、工作原理以及注意事项
2014/05/20 Javascript
深入探讨javascript中的数据类型
2015/03/04 Javascript
js实现圆盘记速表
2015/08/03 Javascript
jQuery+Ajax实现无刷新操作
2016/01/04 Javascript
JavaScript学习笔记整理_简单实现枚举类型,扑克牌应用
2016/09/19 Javascript
Angular ng-class详解及实例代码
2016/09/19 Javascript
javascript中闭包概念与用法深入理解
2016/12/15 Javascript
JS数组排序方法实例分析
2016/12/16 Javascript
jQuery返回定位插件详解
2017/05/15 jQuery
深入理解Commonjs规范及Node模块实现
2017/05/17 Javascript
Bootstrap table使用方法汇总
2017/11/17 Javascript
JavaScript数据结构与算法之队列原理与用法实例详解
2017/11/22 Javascript
浅谈webpack编译vue项目生成的代码探索
2017/12/11 Javascript
原生JS实现列表子元素顺序反转的方法分析
2018/07/02 Javascript
vue 移动端注入骨架屏的配置方法
2019/06/25 Javascript
webpack.DefinePlugin与cross-env区别详解
2020/02/23 Javascript
[02:20]DOTA2亚洲邀请赛 EHOME战队出场宣传片
2015/02/07 DOTA
[01:12:35]Spirit vs Navi Supermajor小组赛 A组败者组第一轮 BO3 第二场 6.2
2018/06/03 DOTA
python requests证书问题解决
2019/09/05 Python
Python 寻找局部最高点的实现
2019/12/05 Python
手把手教你将Flask应用封装成Docker服务的实现
2020/08/19 Python
使用HTML和CSS3绘制基本卡通图案的示例分享
2015/11/06 HTML / CSS
使用HTML5和CSS3制作一个模态框的示例
2018/03/07 HTML / CSS
德国最新街头服饰网上商店:BODYCHECK
2019/09/15 全球购物
分别介绍一下Session Bean和Entity Bean
2015/03/13 面试题
教导处工作制度
2014/01/18 职场文书
服务承诺书格式
2014/05/21 职场文书
医院义诊活动总结
2014/07/04 职场文书
大学生社会实践活动总结报告
2015/05/06 职场文书
postgresql使用filter进行多维度聚合的解决方法
2021/07/16 PostgreSQL