Keyboard Lock API
Keyboard Lock API 允许控制键盘的输入形式,捕获键盘的输入从而进行自定义的处理(特别是针对一些特殊按键)
通过 navigator.keyboard 暴露的 Keyboard 接口实例使用
该 API 的使用要求有用户交互的发生
启用键盘锁定
使用 Keyboard 接口的 lock() 方法启用键盘锁定
方法可以传递一个可选的 keyCodes 字符串数组参数,代表要锁定的键值码;不传递则代表锁定所有的按键
方法返回一个 Promise
方法可能抛出 AbortError,若在该方法完成前又重新调用了该方法
方法可能抛出 InvalidAccessError,若任一 keyCodes 中的项非法
方法可能抛出 InvalidStateError,若方法未在活跃浏览器上下文中调用
1 | navigator.keyboard.lock() |
若调用多次调用 lock() 方法且中途未调用 unlock() 方法,则只有最后一次指定的 keyCodes 有效
停止键盘锁定
使用 Keyboard 接口的 unlock() 方法停止键盘锁定
1 | navigator.keyboard.unlock() |
类型
1 | interface Keyboard extends EventTarget { |
链接
Keyboard Lock API
https://skyclouds2001.github.io/2023/10/24/Keyboard-Lock-API/

