这是 MDN 推荐的在线演示:
它适用于桌面,但不适用于移动设备(Chrome、Edge、FF)。同时,指针锁定 API 被列为在移动设备上广泛支持: https ://developer.mozilla.org/en-US/docs/Web/API/Pointer_Lock_API
更多演示:
我自己也实现了,当我使用 JSON.stringify(e) 读取错误事件的内容时,我得到:'{isTrusted:true}'
更新: 我使用了一个更复杂的函数来序列化整个事件对象,所以在添加了 MDN 事件侦听器建议之后:
document.addEventListener('pointerlockerror', lockError, false);
document.addEventListener('mozpointerlockerror', lockError, false);
和
function lockError(e) {
serializeEvent(e)
}
我从序列化函数中得到:
更新#2: 我包含了 FF,因为它也不起作用,它只是不会引发错误,而它不规律地跟随指针(高速),没有锁定它并且在触发 pointerlockchange 事件时!