DeviceMotionEvent - 提供有关设备位置和方向的更改速度的信息
这是一个实验中的功能
此功能某些浏览器尚在开发中,请参考浏览器兼容性表格以得到在不同浏览器中适合使用的前缀。由于该功能对应的标准文档可能被重新修订,所以在未来版本的浏览器中该功能的语法和行为可能随之改变。
概要
DeviceMotionEvent
为 Web 开发人员提供有关设备位置和方向的更改速度的信息。
警告: 目前,Firefox 和 Chrome 不会以相同的方式处理坐标。使用它们时要小心。
构造函数
DeviceMotionEvent.DeviceMotionEvent()
创建一个新的 DeviceMotionEvent
。
属性
DeviceMotionEvent.acceleration
只读
提供了设备在 X,Y,Z 轴方向上加速度的对象。加速度的单位为 m/s2。
DeviceMotionEvent.accelerationIncludingGravity
只读
提供了设备在 X,Y,Z 轴方向上带重力的加速度的对象。加速度的单位为 m/s2
DeviceMotionEvent.rotationRate
只读
一个对象,给出三个方向轴 alpha,beta 和 gamma 上设备方向的变化率。旋转速率以度/秒表示。
DeviceMotionEvent.interval
只读
一个数字,表示从设备获取数据的时间间隔(以毫秒为单位)。
实例
window.addEventListener('devicemotion', function(event) {
console.log(event.acceleration.x + ' m/s2');
});
规范
规范 | 状态 | 备注 |
---|---|---|
DeviceOrientation Event Specification | 编者的草案 | 初始规范。 |
桌面浏览器兼容性
特性 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
基础支持 | 11 | 12 | 6 | 不支持 | 15 | 5 |
DeviceMotionEvent() 构造函数 | 59 | ≤79 | 未知 | 不支持 | 未知 | 未知 |
acceleration | 支持 | 12 | 6 | 不支持 | 支持 | 未知 |
accelerationIncludingGravity | 支持 | 12 | 6 | 不支持 | 支持 | 未知 |
interval | 支持 | 12 | 6 | 不支持 | 支持 | 未知 |
rotationRate | 支持 | 12 | 6 | 不支持 | 支持 | 未知 |
移动浏览器兼容性
特性 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
基础支持 | ≤37 | 18 | 未知 | 6 | 未知 | 14 | 4.2 |
DeviceMotionEvent() 构造函数 | 59 | 59 | 未知 | 未知 | 未知 | 未知 | 未知 |
acceleration | 支持 | 支持 | 未知 | 6 | 未知 | 未知 | 4.2 |
accelerationIncludingGravity | 支持 | 支持 | 未知 | 6 | 未知 | 支持 | 4.2 |
interval | 支持 | 支持 | 未知 | 6 | 未知 | 支持 | 4.2 |
rotationRate | 支持 | 支持 | 未知 | 6 | 未知 | 支持 | 4.2 |