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 相关文章推荐
表单button的outline在firefox浏览器下的问题
Dec 24 HTML / CSS
使用CSS3和Checkbox实现JQuery的一些效果
Aug 03 HTML / CSS
css3实现画半圆弧线的示例代码
Nov 06 HTML / CSS
简单几步用纯CSS3实现3D翻转效果
Jan 17 HTML / CSS
CSS实现雨滴动画效果的实例代码
Oct 08 HTML / CSS
html5的画布canvas——画出简单的矩形、三角形实例代码
Jun 09 HTML / CSS
HTML5 visibilityState属性详细介绍和使用实例
May 03 HTML / CSS
HTML5 在canvas中绘制矩形附效果图
Jun 23 HTML / CSS
HTML5不支持标签和新增标签详解
Jun 27 HTML / CSS
canvas因为图片资源不在同一域名下而导致的跨域污染画布的解决办法
Jan 18 HTML / CSS
HTML5 播放 RTSP 视频的实例代码
Jul 29 HTML / CSS
CSS 还能这样玩?奇思妙想渐变的艺术
Apr 27 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
PHP4之COOKIE支持详解
2006/10/09 PHP
PHP并发多进程处理利器Gearman使用介绍
2016/05/16 PHP
php判断是否连接上网络的方法实例详解
2016/12/14 PHP
Thinkphp 框架扩展之Widget扩展实现方法分析
2020/04/23 PHP
jQuery asp.net 用json格式返回自定义对象
2010/04/07 Javascript
js向上无缝滚动,网站公告效果 具体代码
2013/11/18 Javascript
js 针对html DOM元素操作等经验累积
2014/03/11 Javascript
js中的json对象详细介绍
2014/10/29 Javascript
JS仿iGoogle自定义首页模块拖拽特效的方法
2015/02/13 Javascript
实例讲解Jquery中隐藏hide、显示show、切换toggle的用法
2016/05/13 Javascript
Highcharts 多个Y轴动态刷新数据的实现代码
2016/05/28 Javascript
javascript与jquery动态创建html元素示例
2016/07/25 Javascript
手机软键盘弹出时影响布局的解决方法
2016/12/15 Javascript
jQuery+HTML5实现弹出创意搜索框层
2016/12/29 Javascript
Vue.js基础知识小结
2017/01/13 Javascript
Vue服务端渲染和Vue浏览器端渲染的性能对比(实例PK )
2017/03/31 Javascript
javascript基于牛顿迭代法实现求浮点数的平方根【递归原理】
2017/09/28 Javascript
详解如何使用router-link对象方式传递参数?
2019/05/02 Javascript
如何获取vue单文件自身源码路径
2019/05/06 Javascript
vue+express+jwt持久化登录的方法
2019/06/14 Javascript
原生js实现简单轮播图
2020/10/26 Javascript
JavaScript this关键字的深入详解
2021/01/14 Javascript
python 类对象和实例对象动态添加方法(分享)
2017/12/31 Python
pycharm 将django中多个app放到同个文件夹apps的处理方法
2018/05/30 Python
Anaconda 离线安装 python 包的操作方法
2018/06/11 Python
python实现一个简单的udp通信的示例代码
2019/02/01 Python
世界上最大的艺术社区:SAA
2020/12/30 全球购物
优秀的茶餐厅创业计划书
2014/01/03 职场文书
卖车协议书
2014/04/21 职场文书
市委召开党的群众路线教育实践活动总结大会报告
2014/10/21 职场文书
八项规定自查自纠报告及整改措施
2014/10/26 职场文书
2015年小学语文工作总结
2015/05/25 职场文书
外出听课学习心得体会
2016/01/15 职场文书
python用海龟绘图写贪吃蛇游戏
2021/06/18 Python
PyTorch中的torch.cat简单介绍
2022/03/17 Python
TypeScript 内置高级类型编程示例
2022/09/23 Javascript