下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、html 5实现手机摇一摇的功能在百度开发者大会上介绍过html5另外一个重要特性就是deviceorientation,它将底层的方向传感器和运动传感器举行了高级封装,提供了dom大事的支持。这个特性包括两种大事:deviceorientation:封装了方向传感器数据的大事,可以猎取手机静止状态下的方向数据,例如手机所处角度、方位、朝向等。devicemotion:封装了运动传感器数据的大事,可以猎取手机运动状态下的运动加速度等数据。用法它我们能够很简单的实现重力感应、指南针等好玩的功能,在手机上将十分实用。例如opera h5体验版里的重力感应球示例就是通过监听deviceorienta
2、tion api的deviceorientation大事来实现的。用html5实现手机摇一摇的功能其实它还能协助我们在网页上实现一个手机应用里十分常见而时尚的功能:手机摇一摇。我最开头见到这个功能其实是在photoshake里,后来包括微信在内的许许多多、大大小小的应用都加入了这个功能。用html5实现手机摇一摇的功能假如你曾经做过android或者ios开发,对于这样的功能可能十分了解。但是下面,我们将在web上首次实现这个功能。让我们赶快开头吧!devicemotionevent(设备运动大事)返回设备有关于加速度和旋转的相关信息。加速度的数据将包含三个轴:x,y和z(暗示如下图所 示,x
3、轴横向贯通手机屏幕或者笔记本键盘,y轴纵向贯通手机屏幕或笔记本键盘,z轴垂直于手机屏幕或笔记本键盘)。由于有些设备可能没有硬件来排解重力的 影响,该大事会返回两个属性,accelerationincludinggravity(含重力的加速度)和acceleration(加速度),后者 排解了重力的影响。用html5实现手机摇一摇的功能对于deviceorientation,html5rocks上有一篇具体的介绍文章this end up: using device orientation,很有参考价值。我们先来监听运动传感大事。javacript if (window.devicemotion
4、event) window.addeventlistener('devicemotion',devicemotionhandler, false); /javascript然后猎取含重力的加速度。javacript function devicemotionhandler(eventdata) var acceleration =eventdata.accelerationincludinggravity; /javascript下面就涉及到我们如何计算用户摇摆手机的原理了。考虑的要点如下:1、 用户大多时候都是以一个方向为主晃动手机来举行摇动;2、 在晃动时三个方向的加速度数
5、据必然都会变幻;3、 我们不能误判手机正常的运动行为,想一想,假如你的手机放在裤兜里,走路时它也会有加速度数据变幻。综上,我们应当针对三个方向的加速度举行计算,间隔测量它们,考察它们在固定时光段里的变幻率,而且需要为它确定一个阈值来触发动作。我们需要定义几个变量来记录历史x、y、z轴的数据以及上一次触发的时光。核心办法实现代码如下:var shake_threshold = xxx; var last_update = 0; var x, y, z, last_x, last_y, last_z; function devicemotionhandler(eventdata) var acce
6、leration =eventdata.accelerationincludinggravity; var curtime = newdate().gettime(); if (curtime - lastupdate)> 100) var difftime = curtime -last_update; last_update = curtime; x = acceleration.x; y = acceleration.y; z = acceleration.z; var speed = math.abs(x +y + z - last_x - last_y - last_z) / difftime * 10000; if (speed > shak
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026欧洲环境治理行业政策导向市场分析投资评估策略发展研究报告
- 2026欧洲时尚服装产业供需态势及扩张方向前瞻性报告
- 2026年电气工程师考试专业知识重点解析
- ZW项目复杂地质隧道TBM施工安全风险管理研究
- 2026年会展推广品牌合作合同
- 2026年半导体采购云资源租赁协议
- 机电管线穿插施工进度协调方案
- 静脉输液治疗护理工作制度
- H省跨流域调水PPP项目风险防范和管控机制研究
- 2026江苏众拓人才科技有限公司实习生招聘笔试备考试题及答案解析
- 分子蒸馏完整版本
- 转动设备的检修课件
- 苏通长江大桥桥区水域通航安全风险与海事管理对策(航海技术)
- 小动物常规临床检查皮肤
- TCCUA 003-2019 金融信息科技服务外包风险管理能力成熟度评估规范
- 烟草专卖违法行为课件
- YY/T 0634-2022眼科仪器眼底照相机
- GB/T 28387.2-2012印刷机械和纸加工机械的设计及结构安全规则第2部分:印刷机、上光机和印前机械
- GB/T 27806-2011环氧沥青防腐涂料
- GB/T 12618.1-2006开口型平圆头抽芯铆钉10、11级
- 中医优势病种临床路径
评论
0/150
提交评论