概念与用法
移动设备通常配备有陀螺仪、指南针和加速度计等传感器,这些传感器可以使设备上的应用程序检测设备的朝向和运动。
设备方向事件使您能够编写 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
加载中…
另见
- web.dev 上的设备方向和运动