Keyboard - Web APIs

实例属性

还继承了其父接口 EventTarget 的属性。

实例方法

还继承了其父接口 EventTarget 的方法。

Keyboard.getLayoutMap() 实验性

返回一个 Promise,该 Promise 解析为一个 KeyboardLayoutMap 实例,这是一个类似 Map 的对象,提供用于检索与特定物理按键关联的字符串的函数。

Keyboard.lock() 实验性

返回一个 Promise,该 Promise 在启用对物理键盘上任意或所有按键的按键捕获后解析。

Keyboard.unlock() 实验性

解锁由 lock() 方法捕获的所有按键,并同步返回。

示例

键盘映射

以下示例演示了如何获取与英文 QWERTY 键盘上 'W' 键对应的按键的位置或布局特定的字符串。

jsif (navigator.keyboard) {

const keyboard = navigator.keyboard;

keyboard.getLayoutMap().then((keyboardLayoutMap) => {

const upKey = keyboardLayoutMap.get("KeyW");

window.alert(`Press ${upKey} to move up.`);

});

} else {

// Do something else.

}

键盘锁定

以下示例捕获 W、A、S 和 D 键,并使用包含这些按键的键码属性值列表调用 lock()。

jsnavigator.keyboard.lock(["KeyW", "KeyA", "KeyS", "KeyD"]);

这将捕获这些按键,而不管按键时使用了什么修饰符。假设使用标准的美国 QWERTY 布局,注册 KeyW 可确保 W、Shift+W、Control+W、Control+Shift+W 以及与 W 组合的所有其他按键修饰符组合都会发送到应用程序。对于 KeyA、KeyS 和 KeyD 也是如此。

规范

规范

键盘映射# keyboard-interface

键盘锁定# keyboard-interface

浏览器兼容性

加载中…

帮助改进 MDN

此页面对您有帮助吗?

了解如何贡献 此页面的最后修改时间是 2025 年 5 月 28 日,由 MDN 贡献者 进行。

在 GitHub 上查看此页面 • 报告此内容的错误

Top