Window: devicemotion 事件
devicemotion
事件以固定的时间间隔触发,并指示设备在此时加速度,包括或不包括重力。如果可用,它还会提供有关旋转速率的信息。
此事件不可取消,也不冒泡。
语法
在诸如 addEventListener()
之类的方法中使用事件名称,或设置事件处理程序属性。
js
addEventListener("devicemotion", (event) => {});
ondevicemotion = (event) => {};
事件类型
一个 DeviceMotionEvent
。继承自 Event
。
事件属性
DeviceMotionEvent.acceleration
只读-
一个对象,提供设备在三个轴(x、y 和 z)上的加速度。加速度以 m/s² 为单位表示。
DeviceMotionEvent.accelerationIncludingGravity
只读-
一个对象,提供设备在三个轴(x、y 和 z)上的加速度,包括重力的影响。加速度以 m/s² 为单位表示。
DeviceMotionEvent.rotationRate
只读-
一个对象,提供设备在三个方向轴(alpha、beta 和 gamma)上的方向变化率。旋转速率以度/秒为单位表示。
DeviceMotionEvent.interval
只读-
一个数字,表示从设备获取数据的毫秒级时间间隔。
示例
js
function handleMotionEvent(event) {
const x = event.accelerationIncludingGravity.x;
const y = event.accelerationIncludingGravity.y;
const z = event.accelerationIncludingGravity.z;
// Do something awesome.
}
window.addEventListener("devicemotion", handleMotionEvent, true);
规范
规范 |
---|
设备方向和运动 # devicemotion |
设备方向和运动 # ref-for-dom-window-ondevicemotion |
浏览器兼容性
BCD 表格仅在浏览器中加载