模块:Accelerometer

Accelerometer模块管理设备加速度传感器,用于获取设备加速度信息,包括x(屏幕水平方向)、y(垂直屏幕水平方向)、z(垂直屏幕平面方向)三个方向的加速度信息。例如:微信的摇一摇,当你在摇晃手机的时候,上下左右都会产生一个相应的值,当这个值大于某一个值的时候,就可以确定是在摇晃手机了,这时就会做出响应;

首先所有HTML5+对象是放到 plus 里面的;其次是具体对象;accelerometer;然后是具体的方法:getCurrentAcceleration(); 获取当前设备的加速度信息;watchAcceleration(); 监听设备加速度变化信息;clearWatch(); 关闭监听设备加速度信息;

使用场景: 摇一摇,步数统计,报警系统,速度感应系统等

即时获取:当调用这个的时候,这个加速度是多少;

plus.accelerometer.getCurrentAcceleration(function(a){
alert( "Acceleration\nx:" + a.xAxis + "\ny:" + a.yAxis + "\nz:" + a.zAxis );
},function(e){
alert( "Acceleration error: " + e.message );
});

监听接口:每隔多长时间去获取下;(有点像JavaScript的定时器,开启定时器每隔多少时间去调用下,然后还可以取消)

看回调:successCB,errorCB,option

var wid = null; //监听返回的是一个ID
wid = plus.accelerometer.watchAcceleration(function(a){
var valStr = "Acceleration\nx:" + a.xAxis + "\ny:" + a.yAxis + "\nz:" + a.zAxis;
$("#info").html(valStr);
},function(e){
var valStr = "Acceleration error: " + e.message ;
$("#info").html(valStr);
},{frequency:'1000'});

停止监听

plus.accelerometer.clearWatch(wid); // 类似于清空定时器需要制定一个播放器

获取示例

<header class="mui-bar mui-bar-nav">
<a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
<h1 class="mui-title">设备加速传感器</h1>
</header>
<div class="mui-content mui-content-padded">
<button type="button" id="btnGetAcc" class="mui-btn mui-btn-blue mui-btn-block">获取</button>
<button type="button" id="btnWatchAcc" class="mui-btn mui-btn-blue mui-btn-block">监听</button>
<button type="button" id="btnClearAcc" class="mui-btn mui-btn-blue mui-btn-block">停止监听</button>
<p id="info"></p>
</div>
<script src='http://libs.baidu.com/jquery/1.8.3/jquery.min.js'></script>
<script type="text/javascript" src="js/mui.js"></script>
<script type="text/javascript">
mui.plusReady(function(){
$("#btnGetAcc").bind('tap',function(){getAcc();});
$("#btnWatchAcc").bind('tap',function(){watchAcc();});
$("#btnClearAcc").bind('tap',function(){clearWatch();});
function getAcc(){
plus.accelerometer.getCurrentAcceleration(function(a){
alert( "Acceleration\nx:" + a.xAxis + "\ny:" + a.yAxis + "\nz:" + a.zAxis );
},function(e){
alert( "Acceleration error: " + e.message );
});
};
var wid = null;
function watchAcc(){
wid = plus.accelerometer.watchAcceleration(function(a){
var valStr = "Acceleration\nx:" + a.xAxis + "\ny:" + a.yAxis + "\nz:" + a.zAxis;
$("#info").html(valStr);
},function(e){
var valStr = "Acceleration error: " + e.message ;
$("#info").html(valStr);
},{frequency:'1000'});
}
function clearWatch(){
plus.accelerometer.clearWatch(wid);
}
});
</script>

设备加速传感器(accelerometer) ---- HTML5+的更多相关文章

  1. Xamarin Essentials教程使用加速度传感器Accelerometer

    Xamarin Essentials教程使用加速度传感器Accelerometer   加速度传感器是一种能够测量加速度的传感器,用于检测设备状态的改变.在Xamarin中,如果开发者想要使用加速度传 ...

  2. Swift - 加速传感器(CoreMotion)的用法,小球加速运动并反弹样例

    1,加速传感器可以监听到x,y,z三个方向的加速度,使用步骤如下: (1)实例化CMMotionManager类 (2)向CMMotionManager的accelerometerUpdateInte ...

  3. Android 获取加速传感器的值,并去除杂音

    1.注册和注销传感器 private void registerSensor() { manager.registerListener(this, manager.getDefaultSensor(S ...

  4. Pro Android学习笔记(一五四):传感器(4):陀螺仪、加速传感器

    文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注册等附加条件.转载须注明出处http://blog.csdn.net/flowingflying/以及作者@恺风Wei. 陀螺仪 陀螺仪(Gyr ...

  5. 移动设备wap手机网页html5通过特殊链接:打电话,发短信,发邮件详细教程

    如果需要在移动浏览器中实现拨打电话,调用sms发短信,发送email等功能,移动手机WEB页面(HTML5)Javascript提供的接口是一个好办法. 采用url href链接的方式,实现在Safa ...

  6. HTML5 移动开发(移动设备检测及对HTML5的支持)

    1.如何选择要使用的特性以及所面向的浏览器 2.哪些浏览器支持HTML5 3.如何检测是否支持HTML5 4.如何开发贷容错性的Web应用程序 5.CSS3媒体查询如何增强检测脚本   使用HTML5 ...

  7. 加速传感器(CoreMotion) swift

    // // ViewController.swift // UILabelTest // // Created by mac on 15/6/23. // Copyright (c) 2015年 fa ...

  8. Android_(传感器)获取手机中的传感器

    传感器是一种检测装置,能够感受被测量的信息,并能将检测和感受到的信息按一定规律变换成电信号或其它所需形式的信息输出 Android操作系统中内置了很多的传感器(物理装置),能够探测.感受外界的信号.物 ...

  9. Windows Phone 硬件检测

    private static bool IsWvga{ get { return App.Current.Host.Content.ScaleFactor == 100; }} private sta ...

随机推荐

  1. imx6 android5.1 编译

    imx6 android5.1 编译 记录一下编译imx6dl android的命令. Android build cd ~/myandroid source build/envsetup.sh lu ...

  2. javaScript实现归并排序

    归并排序是一个O(nlogn)的算法,其基本思想就是一个分治的策略,先进行划分,然后再进行合并,下面举个例子.有这样一组数据: {5,4,1,22,12,32,45,21} 如果对它进行归并排序的话, ...

  3. MathType编辑双向斜箭头的教程

    箭头是一个很常见的符号,不只是在数学中,在各个方面出现的频率都很高,因此在数学公式中出现时,用MathType公式编辑器编辑公式时也要尽量地能够编辑出这些符号.箭头符号在MathType中有很多,使用 ...

  4. CSS Sprite的应用

    什么是CSS Sprite ? 不知道您在浏览yahoo.com的网页中是否注意到,yahoo在页面制作上的技术和大多数网站不一样,他们把页面上的 ICON,栏目背景啊,图片按钮啊等都有会有规则的合并 ...

  5. 编写高性能的jQuery代码

    jQuery Optimization 现在jQuery已经出现在很多项目中,然而许多同学忽略了他的性能问题以及代码质量问题, 下面是我对jQuery的一些性能方面的学习. 选择器 选择器是jQuer ...

  6. NHibernate连接oracle报错

    NHibernate.Exceptions.GenericADOException:“could not execute query [ select sys_user0_.USERID as USE ...

  7. web.xml 中的listener、filter、servlet 加载顺序及其【配置详解】

    在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰. 首先可以肯定的是 ...

  8. Oracle Merge Into Insert/Update

    出自:http://blog.csdn.net/yuzhic/article/details/1896878 动机: 想在Oracle中用一条SQL语句直接进行Insert/Update的操作. 说明 ...

  9. 7 -- Spring的基本用法 -- 5... Spring容器中的Bean;容器中Bean的作用域;配置依赖;

    7.5 Spring容器中的Bean 7.5.1 Bean的基本定义和Bean别名 <beans.../>元素是Spring配置文件的根元素,该元素可以指定如下属性: default-la ...

  10. Windows+IIS结合LVS+Keepalived是实现Linux负载均衡软件

    在Discuz!NT的最新版本(企业版)中,支持目前主流LINUX平台上的负载均衡解决方案,比如NGINX,HAPROXY,LVS等.本文与其说是解决方案,倒不如说是介绍如何搭建Discuz!NT负载 ...