javascript如何检查移动设备,如手机平台是否支持重力或者方向感应。

  可以使用html5提供的重力和方向感应接口来判断。

  html5 中针对高端手机提供了重力感应和重力加速的接口,开发可以利用这个接口获取到移动设备重力加速感应数据。

  目前已经支持的浏览器只有chrome和firefox,以及IOS的webkit(貌似android上因为版本差异很大,部分低版本的系统不支持)。

引用来源:http://www.pjhome.net/article/Javascript/html5_Orientation.html

  javascript检查移动设备是否支持重力方向感应源代码如下

-收缩HTML代码  运行代码  [如果运行无效果,请自行将源代码保存为html文件运行]
<title>javascript检查移动设备是否支持重力方向感应</title>
<script>
var supportDevicemotion=false,supportOrientation=false;
function orientationListener(e) {
if (e.type == 'devicemotion') {
supportDevicemotion = true;
window.removeEventListener('devicemotion', orientationListener, false);
document.body.appendChild(document.createTextNode('设备支持重力感应|'));
}
else if (e.type == 'deviceorientation' || e.type.toLowerCase() == 'mozorientation') {
supportOrientation = true;
window.removeEventListener('deviceorientation', orientationListener, false);
window.removeEventListener('MozOrientation', orientationListener, false);
document.body.appendChild(document.createTextNode('设备支持方向感应'));
}
}
window.addEventListener('deviceorientation', orientationListener, false); //方向感应器
window.addEventListener('MozOrientation', orientationListener, false); //方向感应器 for firefox
window.addEventListener('devicemotion', orientationListener, false); //重力加速感应器 for iphone, android
</script>

javascript检查移动设备是否支持重力方向感应的更多相关文章

  1. 关于oracle12c对RAW裸设备的支持?

    关于oracle12c对RAW裸设备的支持? 本文内容由ORACLE运维高级群的讨论,有xifenfei前辈提供. 12C对于裸设备的支持和11G R2没有本质区别,在装rac的时候不能使用裸设备,但 ...

  2. JavaScript获取访问设备信息

    <html xmlns=http://www.w3.org/1999/xhtml> <head> <title>JavaScript获取访问设备信息</tit ...

  3. IOS 控制当前控制器支持哪些方向

    #pragma mark - 实现这个方法来控制屏幕方向 /** * 控制当前控制器支持哪些方向 * 返回值是UIInterfaceOrientationMask* */ - (NSUInteger) ...

  4. JavaScript 检查 email 地址的正则表达式

    JavaScript 检查 email 地址的正则表达式​1.代码(1)<html><head><title>Checking an email address - ...

  5. HTML5的设计目的是为了在移动设备上支持多媒体

    HTML5的设计目的是为了在移动设备上支持多媒体

  6. fluent在运行时改变重力方向方法总结

    Fluent版本:19.0(其他版本应该也适用) 这里我们用一个简单的算例(同心环中的自然对流)来说明 算例来自<ANSYS Fluid Dynamics Verification Manual ...

  7. js检查判断设备

    js检查判断设备 var navigatorType = {}; var u=navigator.userAgent; navigatorType.IsIE= u.indexOf('Trident') ...

  8. 【HTML5 】手机重力与方向感应的应用——摇一摇效果

    http://www.helloweba.com/view-blog-287.html HTML5有一个重要特性:DeviceOrientation,它将底层的方向和运动传感器进行了高级封装,它使我们 ...

  9. 思路清奇:通过 JavaScript 获取移动设备的型号

    我们一般在浏览器里识别用户的访问设备都是通过 User Agent 这个字段来获取的,但是通过它我们只能获取一个大概的信息,比如你用的是 Mac 还是 Windows,用的是 iPhone 还是 iP ...

随机推荐

  1. Turn off Debug Logging in Quartz .Net

    Quartz.net uses Common.Logging, so something like this in your App.config/Web.config: <configSect ...

  2. SpringToolSuite/Eclipse中集成的Tomcat无法add Project时的解决版本

  3. Thread.join简单介绍

    百度了一下,终于明白了.这个解释最简单: 前提:join()方法肯定是被某个线程调用的.   A线程正在执行,突然执行的时候碰到了B.join(), 那么,A线程就必须要等到B线程执行完之后才能执行. ...

  4. flash flex 程序出现错误 Error #2032

    解决思路参考: http://www.cnblogs.com/enjoyprogram/archive/2012/06/21/2557615.html 有可能是这种情况: 状况:在安装flshbuil ...

  5. 树莓派开启root用户

    树莓派系统使用的linux是debian系统,所以树莓派启用root和debian是相同的. debian里root账户默认没有密码,但账户锁定. 当需要root权限时,由默认账户经由sudo执行,R ...

  6. linux下配置ip地址四种方法(图文方法)

    主要是用第四种方法 (1)Ifconfig命令  第一种使用ifconfig命令配置网卡的ip地址.此命令通常用来零时的测试用,计算机启动后 ip地址的配置将自动失效.具体用法如下.Ipconfig  ...

  7. recyleView使用笔记

    直接上代码: package com.test.recycleview; import android.app.Activity; import android.graphics.Canvas; im ...

  8. eclipse NoClassDefFoundError错误

    问题描述:eclipse中执行一个java web项目,代码中依赖都是正常的,发布到tomcat中调试就提示NoClassDefFoundError错误, 问题分析:首先确定工程中该类确实存在,因为代 ...

  9. javascript 中正则表达式应用

    <script type="text/javascript"> var str="<script type='text/javascript'> ...

  10. NPOI Excel 单元格背景颜色对照表

    NPOI Excel 单元格颜色对照表,在引用了 NPOI.dll 后可通过 ICellStyle 接口的 FillForegroundColor 属性实现 Excel 单元格的背景色设置,FillP ...