Keyboard Event
键盘事件(Keyboard Event)是浏览器在用户按键时发出的输入事件对象,也是 Web 快捷键系统的起点。
快捷键实现里的关键选择
keydown适合作为主派发时机,因为命令可以在浏览器默认行为之前被截断keyup更适合释放态或结束态逻辑keypress只覆盖可生成字符的输入,而且已经退出标准
关键字段
key表示当前布局和 modifier 作用后的字符或命名键值code表示物理键位置ctrl、alt、shift、meta表示组合键状态- keyCode 是旧实现里常见的遗留属性
事件对象还缺的那块信息
Keyboard Event 能告诉系统“按下了哪颗物理键”和“这次输入产出了什么字符”。快捷键国际化还需要知道 code + modifier -> key 的完整映射,因此实现层通常还要引入 Keyboard Layout Mapping。