我正在寻找一种方法来检查设备是否支持 DeviceOrientationEvent 或 DeviceMotionEvent。更准确地说,我不知道该设备是否真的有加速度计。
不幸的是window.DeviceMotionEvent
,尽管设备 - MacBook Retina - 没有加速度计,但它们仍然存在。window.ondevicemotion
window.DeviceOrientationEvent
window.ondeviceorientation
我很清楚,如果从不触发事件,事件监听器的回调函数也将永远不会运行。但就我而言,我的程序需要知道设备是否有加速度计,因为如果没有加速度计,用户应该收到通知。
不幸的是,这篇文章的答案对我的问题不起作用。