• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >jquery > HTML5使用DeviceOrientation实现摇一摇功能

HTML5使用DeviceOrientation实现摇一摇功能

作者: 字体:[增加 减小] 来源:互联网

通过本文主要向大家介绍了HTML5,DeviceOrientation,摇一摇等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

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演示。

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

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • JQuery和HTML5 Canvas实现弹幕效果
  • Html5+jQuery+CSS制作相册小记录
  • 手机移动端实现 jquery和HTML5 Canvas的幸运大奖盘特效
  • jquery html5 视频播放控制代码
  • HTML5+jQuery插件Quicksand实现超酷的星际争霸2兵种分类展示效果(附demo源码下载)
  • jQuery Mobile操作HTML5的常用函数总结
  • 基于Jquery和html5实现炫酷的3D焦点图动画
  • jQuery mobile 移动web(6)
  • jquery mobile 移动web(5)
  • 基于Jquery和html5的7款个性化地图插件

相关文章

  • jQuery zTree树插件动态加载实例代码
  • JQuery live函数
  • jQuery对象与DOM对象之间的相互转换
  • jQuery实现非常实用漂亮的select下拉菜单选择效果
  • jquery下div 的resize事件示例代码
  • jQuery 1.8 Release版本发布了
  • jquery实现固定顶部导航效果(仿蘑菇街)
  • 浅析jquery unbind()方法移除元素绑定的事件
  • jQuery中extend()和fn.extend()方法详解
  • jQuery实现鼠标单击网页文字后在文本框显示的方法

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • jQuery手风琴的简单制作
    • ASP.NET jQuery 实例1(在TextBox里面创建一个默认提示)
    • jquery 新手学习常见问题解决方法
    • 为jQuery-easyui的tab组件添加右键菜单功能的简单实例
    • jQuery实现右下角可缩放大小的层完整实例
    • jquery插件EasyUI中form表单提交实例分享
    • Jquery表单验证失败后不提交的解决方法
    • jQuery的图片轮播插件PgwSlideshow使用详解
    • jquery中的过滤操作详细解析
    • jQuery Ajax 实例全解析

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有