HTML5使用DeviceOrientation实现摇一摇功能_jquery

HTML5有一个重要特性:DeviceOrientation,它将底层的方向和运动传感器进行了高级封装,它使我们能够很容易的实现重力感应、指南针等有趣的功能。本文将结合实例给大家介绍使用HTML5的重力运动和方向传感器实现手机摇一摇效果。

DeviceOrientation包括两个事件:

1、deviceOrientation:封装了方向传感器数据的事件,可以获取手机静止状态下的方向数据,例如手机所处角度、方位、朝向等。
2、deviceMotion:封装了运动传感器数据的事件,可以获取手机运动状态下的运动加速度等数据。

HTML

页面上有一个div#hand,用来放置一个手摇的图片,div#result用来展示摇动后的结果信息。

<div id="hand" class="hand hand-animate"></div>
<div id="result"></div>

我们可以使用CSS3来增强页面效果,使用-webkit-animation动画效果实现手摇图片的动态效果,具体请下载源代码查看。

Javascript

“摇一摇”这个动作即“一定时间内设备了一定距离”,因此通过devicemotion监听设备晃动获取到的x, y, z轴的 值在一定时间范围内的变化率,即判断设备是否有进行晃动。而为了防止正常移动的误判,需要给该变化率设置一个合适的临界值。
HTML5判断设备晃动的代码我们使用已经封装好的shake.js,项目地址:https://github.com/alexgibson/shake.js。

<script src="shake.js"></script>

首先实例化Shake,然后启动开始监听设备运动情况,监听设备运动,回调监听结果:shakeEventDidOccur。

window.onload = function() {
  var myShakeEvent = new Shake({
    threshold: 15
  }); 

  myShakeEvent.start(); 

  window.addEventListener('shake', shakeEventDidOccur, false); 

  function shakeEventDidOccur () {
    var result = document.getElementById("result");
    result.className = "result";
    var arr = ['妹子一枚','福利图片一套','码农笔记一本','土豪金一台'];
    var num = Math.floor(Math.random()*4);
    result.innerHTML = "恭喜,摇得"+arr[num]+"!";
    setTimeout(function(){
      result.className = "result result-show";
    }, 1000);
  }
};

这里,函数shakeEventDidOccur()可以自定义,本例是将摇晃后的结果返回在页面上展示出来,请看DEMO演示。

以上所述就是本文的全部内容了,希望大家能够喜欢。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索html5
, 摇一摇
DeviceOrientation
deviceorientation、ondeviceorientation、js deviceorientation、h5 deviceorientation、jquery 摇一摇,以便于您获取更多的相关知识。

时间: 2024-09-04 20:32:07

HTML5使用DeviceOrientation实现摇一摇功能_jquery的相关文章

HTML5 DeviceOrientation实现手机网站摇一摇功能代码

 HTML5 DeviceOrientation实现手机网站摇一摇功能代码 介绍之前做两个声明: 以下代码可以直接运行,当然你别忘了引用jQuery才行. 代码如下: <script> // DeviceOrientation将底层的方向传感器和运动传感器进行了高级封装,提供了DOM事件的支持. // 这个特性包括两个事件: // 1.deviceOrientation:封装了方向传感器数据的事件,可以获取手机静止状态下的方向数据(手机所处的角度.方位和朝向等). // 2.deviceMot

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

  Html5+JS实现手机摇一摇功能         HTML5一个重要特性就是DeviceOrientation,它将底层的方向传感器和运动传感器进行了高级封装,提供了DOM事件的支持.这个特性包括两种事件: 1. deviceOrientation:封装了方向传感器数据的事件,可以获取手机静止状态下的方向数据,例如手机所处角度.方位.朝向等. 2. deviceMotion:封装了运动传感器数据的事件,可以获取手机运动状态下的运动加速度等数据. 使用它我们能够很容易的实现重力感应.指南针等

javascript html5摇一摇功能的实现_javascript技巧

通过网上的资料,加上自己的整理,写了一份html摇一摇功能的简介,用做技术备份.知识要点  1.DeviceMotionEvent     这是html5支持的重力感应事件,关于文档请看:http://w3c.github.io/deviceorientation/spec-source-orientation.html 事件介绍:deviceorientation 提供设备的物理方向信息,表示为一系列本地坐标系的旋角.devicemotion 提供设备的加速信息,表示为定义在设备上的坐标系中的

通过手机Web实现手机摇一摇的功能

经常我们玩微信都会用到查到附近的人,都是在app上实现手机摇一摇的功能.现在,我们将此技术搬移到手机web上,供大家学习,主要是用到HTML5的重要特性就是DeviceOrientation:官方文档 它将底层的方向传感器和运动传感器进行了高级封装,提供了DOM事件的支持.这个特性包括两种事件: deviceOrientation:封装了方向传感器数据的事件,可以获取手机静止状态下的方向数据,例如手机所处角度.方位.朝向等. deviceMotion:封装了运动传感器数据的事件,可以获取手机运动

【转】利用js来实现微信摇一摇来自动更换网页背景的功能

微信推出后,他的摇一摇功能非常的火爆,没事来微信摇一摇加加好友,我们可不可以借鉴一下微信的摇一摇功能,让手机访问网页的时候,只要手机摇一摇,网页背景就会自动随时换一个网页背景. 具体想要用摇一摇的功能思路已经确认的了,现在就是来实现代码的了.我们现在是用javascript来实现摇一摇的功能.js摇一摇的代码如下: http://www.itokit.com/2014/0115/75021.html <span style="font-family:Microsoft YaHei;font

jQuery+HTML5实现手机摇一摇换衣特效_jquery

手机摇一摇可以应用到很多场景中,如摇一摇换抽奖,摇一摇搜歌等.本文我将给大家介绍如何使用HTML5+PHP+jQuery实现手机摇一摇换衣效果. 注意,这是一篇WEB知识综合应用的文章,阅读本文前提是,您需要有HTML5,jQuery,PHP,MySQL等相关方面的基础知识. HTML 我页面中默认展示产品信息(某品牌连衣裙产品图片和文字说明),当然实际应用中可以从数据库中获取产品信息. <div id="pro" rel="1"> <p>使

html5摇一摇[转]

写在前面 年底了,有些公司会出一个摇奖的活动,今天在家没事就搜了一下这方面的资料. 原文地址:http://www.cnblogs.com/waitingbar/p/4682215.html 测试 效果还行. 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>摇一摇</title> 6 <style type="

html5-H5页面实现摇一摇功能 在ios上摇动时 出现 撤销 重做 弹出框?这个有什么解决办法?谢谢各位!

问题描述 H5页面实现摇一摇功能 在ios上摇动时 出现 撤销 重做 弹出框?这个有什么解决办法?谢谢各位! 如题,就是在摇动以后,就会出现的一个弹框.这个查了好久也没找到问题 解决方案 http://www.jb51.net/html5/64644.html

HTML5实现摇一摇的效果

DeviceOrientation包括两个事件: 1.deviceOrientation:封装了方向传感器数据的事件,可以获取手机静止状态下的方向数据,例如手机所处角度.方位.朝向等. 2.deviceMotion:封装了运动传感器数据的事件,可以获取手机运动状态下的运动加速度等数据. HTML 页面上有一个div#hand,用来放置一个手摇的图片,div#result用来展示摇动后的结果信息.   <div id="hand" class="hand hand-ani