设备方向事件

安全上下文:此功能仅在安全上下文(HTTPS)中可用,在部分或全部支持的浏览器中可用。

设备方向事件是允许您检测设备的物理方向,以及允许您检测设备的运动的事件。

概念和用法

移动设备通常具有陀螺仪、指南针和加速计等传感器,可以使在设备上运行的应用程序检测设备的方向和运动。

设备方向事件使您能够编写 Web 应用程序,这些应用程序可以根据用户设备的方向更改其行为,以及在用户移动设备时做出反应。

您可能希望使用设备方向事件的一些典型功能包括

  • 在基于 Web 的游戏中,允许用户通过倾斜和移动设备来控制游戏中的角色或物体的运动
  • 在映射应用程序中,根据设备的位置重新定向地图,或提供随着用户移动而更新的转向指示
  • 用于手势识别 - 例如,识别“摇动”手势,并使用它执行一些操作,例如在用户摇动设备时清除输入区域

注意:此 API 在移动浏览器中得到广泛支持。虽然一些仅限桌面的浏览器可能由于硬件差异而存在限制,但鉴于该 API 主要用于配备传感器的设备,这些限制很少是重要的。

接口

DeviceMotionEvent

表示设备加速度的变化以及旋转速率。

DeviceMotionEventAcceleration

表示设备沿所有三个轴所经历的加速度量

DeviceMotionEventRotationRate

表示设备围绕所有三个轴旋转的速率。

DeviceOrientationEvent

表示设备物理方向的变化。

对其他接口的扩展

devicemotion 事件

以规律的时间间隔触发,指示设备在该时间点接收到的物理加速度力的大小,以及设备的旋转速度。

deviceorientation 事件

当设备提供有关设备当前方向相对于地球坐标系的最新数据时触发。

deviceorientationabsolute 事件

当绝对设备方向发生变化时触发。

规范

规范
设备方向和运动

浏览器兼容性

api.Window.deviceorientation_event

BCD 表格仅在启用 JavaScript 的浏览器中加载。

api.Window.devicemotion_event

BCD 表格仅在启用 JavaScript 的浏览器中加载。

api.Window.deviceorientationabsolute_event

BCD 表格仅在启用 JavaScript 的浏览器中加载。

api.DeviceOrientationEvent

BCD 表格仅在启用 JavaScript 的浏览器中加载。

api.DeviceMotionEvent

BCD 表格仅在启用 JavaScript 的浏览器中加载。

api.DeviceMotionEventAcceleration

BCD 表格仅在启用 JavaScript 的浏览器中加载。

api.DeviceMotionEventRotationRate

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅