概述`navigator.keyboard.lock()` 允许在用户手势后请求锁定指定键(如 `Escape`/`F1` 等)的默认行为,适用于游戏与编辑器的沉浸式场景。用法/示例document.querySelector('#enter').addEventListener('click', async () => { try { await navigator.keyboard.lock(['Escape', 'F1']) } catch {} }) addEventListener('keydown', e => { if (e.key === 'Escape') {/* 自定义退出逻辑 */} }) 工程建议仅在明确的用户手势后锁定,提供退出与帮助入口。与焦点与可访问性配合,避免破坏辅助技术与系统快捷键的可用性。在不支持环境回退到常规事件处理与提示文案。参考与验证Chrome Docs:Keyboard Lock — https://developer.chrome.com/docs/web-platform/keyboard-lockweb.dev:Keyboard Lock — https://web.dev/articles/keyboard-lock

发表评论 取消回复