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 Flexbox中flex-shrink属性的用法示例介绍
Dec 30 HTML / CSS
css3新增颜色表示方式分享
Apr 15 HTML / CSS
CSS3中设置3D变形的transform-style属性详解
May 23 HTML / CSS
css3 transform及原生js实现鼠标拖动3D立方体旋转
Jun 20 HTML / CSS
CSS3实现瀑布流布局与无限加载图片相册的实例代码
Dec 22 HTML / CSS
纯CSS3实现移动端展开和收起效果的示例代码
Apr 26 HTML / CSS
HTML5中FileReader接口使用方法实例详解
Aug 26 HTML / CSS
Data URI scheme详解和使用实例及图片base64编码实现方法
May 08 HTML / CSS
HTML5实现移动端点击翻牌功能
Oct 23 HTML / CSS
简单介绍 http请求响应参数、无连接无状态、MIME、状态码、端口、telnet、curl
Mar 31 HTML / CSS
详解CSS开发过程中的20个快速提升技巧
May 21 HTML / CSS
如何解决flex文本溢出问题小结
Jul 15 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
点评山进PR-D3L三波段收音机
2021/03/02 无线电
浅谈PHP与C#的值类型指向区别的详解
2013/05/21 PHP
php中如何同时使用session和cookie来保存用户登录信息
2013/07/05 PHP
PHP实现mysqli批量执行多条语句的方法示例
2017/07/22 PHP
PHP开发中解决并发问题的几种实现方法分析
2017/11/13 PHP
轻松学习Javascript闭包函数
2015/12/15 Javascript
Bootstrap 粘页脚效果
2016/03/28 Javascript
使用jQuery.Qrcode插件在客户端动态生成二维码并添加自定义Logo
2016/09/01 Javascript
彻底学会Angular.js中的transclusion
2017/03/12 Javascript
10道典型的JavaScript面试题
2017/03/22 Javascript
Node.js v8.0.0正式发布!看看带来了哪些主要新特性
2017/06/02 Javascript
JS中type="button"和type="submit"的区别
2017/07/04 Javascript
Vue组件的使用教程详解
2018/01/05 Javascript
微信小程序使用npm支持踩坑
2018/11/07 Javascript
小程序云开发教程如何使用云函数实现点赞功能
2019/05/18 Javascript
[01:23]2019完美世界全国高校联赛(春季赛)合肥全国总决赛
2019/06/10 DOTA
Python random模块(获取随机数)常用方法和使用例子
2014/05/13 Python
磁盘垃圾文件清理器python代码实现
2020/08/24 Python
Python实现的爬取网易动态评论操作示例
2018/06/06 Python
使用python绘制3维正态分布图的方法
2018/12/29 Python
python求平均数、方差、中位数的例子
2019/08/22 Python
python3.6、opencv安装环境搭建过程(图文教程)
2019/11/05 Python
Pyqt5 关于流式布局和滚动条的综合使用示例代码
2020/03/24 Python
keras .h5转移动端的.tflite文件实现方式
2020/05/25 Python
Node.js 和 Python之间该选择哪个?
2020/08/05 Python
4款Python 类型检查工具,你选择哪个呢?
2020/10/30 Python
Python实现给PDF添加水印的方法
2021/01/25 Python
基于Python-turtle库绘制路飞的草帽骷髅旗、美国队长的盾牌、高达的源码
2021/02/18 Python
Myprotein丹麦官网:欧洲第一运动营养品牌
2019/04/15 全球购物
毕业生怎样写好自荐信
2013/11/11 职场文书
安全生产管理合理化建议书
2014/03/12 职场文书
暖通工程师岗位职责
2014/06/12 职场文书
人力资源管理毕业求职信
2014/08/05 职场文书
汽车机电维修工求职信
2014/09/30 职场文书
财务会计求职信范文
2015/03/20 职场文书
SQL Server携程核心系统无感迁移到MySQL实战
2022/06/01 SQL Server