设备方向事件

安全上下文: 此功能仅在安全上下文(HTTPS)中可用,且支持此功能的浏览器数量有限。

设备方向事件允许您检测设备的物理方向,并允许您检测设备的运动

概念与用法

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

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

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

  • 在基于 Web 的游戏中,允许用户通过倾斜和移动设备来控制游戏中角色或对象的运动

  • 在地图应用程序中,根据设备位置重新定向地图,或提供随用户移动而更新的逐向导航

  • 用于手势识别 — 例如,识别“摇晃”手势并用它来执行某些操作,例如当用户摇晃设备时清除输入区域

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

接口

DeviceMotionEvent

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

DeviceMotionEventAcceleration

表示设备在所有三个轴上经历的加速度。

DeviceMotionEventRotationRate

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

DeviceOrientationEvent

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

其他接口的扩展

devicemotion 事件

以固定间隔触发,以指示设备在此时接收到的加速度的物理力大小以及设备的旋转速率。

deviceorientation 事件

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

deviceorientationabsolute 事件

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

规范

规范
设备方向和运动

浏览器兼容性

api.Window.deviceorientation_event

api.Window.devicemotion_event

api.Window.deviceorientationabsolute_event

api.DeviceOrientationEvent

api.DeviceMotionEvent

api.DeviceMotionEventAcceleration

api.DeviceMotionEventRotationRate

另见