设备方向事件
概念和用法
移动设备通常具有陀螺仪、指南针和加速计等传感器,可以使在设备上运行的应用程序检测设备的方向和运动。
设备方向事件使您能够编写 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 的浏览器中加载。
另请参阅
- 设备方向和运动 at web.dev