⌨️

键盘按键信息

实时显示任意按键的 keyCode、key、code 与 location 等键盘事件属性,同步捕获修饰键状态,适合开发键盘快捷键、游戏按键操控、表单快捷输入与无障碍功能时的按键映射调试与事件监听排查。

按下任意键
按下任意键…

关于 键盘按键信息

在网页里处理键盘事件时,需要知道按下的键对应什么 key、code 和已废弃的 keyCode,但靠记忆很难一一对上。本工具在浏览器本地监听你的真实按键,实时显示该键的 event.key、event.code、keyCode、location 以及 Ctrl/Shift/Alt/Meta 修饰键状态,帮你写键盘快捷键、调试输入逻辑。所有按键只在本页捕获处理,不会被记录或发送到任何地方。 建议在日常开发中收藏本工具,遇到相关 Web 开发需求时即可快速打开使用。所有处理均在浏览器本地完成,无需安装任何软件。

使用场景

  • 写快捷键 — 实测某个组合键触发的 key 与 code,照着写 keydown 监听不再猜值。
  • 区分物理键 — 用 code 分辨左右 Shift、主键盘数字和小键盘数字等同名不同位的键。
  • 兼容旧码 — 查到旧代码里 keyCode 数值对应的现代 key/code,平滑迁移到新 API。
  • 布局排查 — 验证不同键盘布局下同一物理键产生的 key 是否符合预期。
  • 游戏控制 — 为网页游戏映射 WASD 等按键时确认 code 值,避免受输入法影响。

常见问题

event.key 和 event.code 有什么区别?

key 表示按键产生的字符或含义,会随键盘布局和 Shift 变化(如 a 与 A);code 表示键的物理位置,与布局无关(如 KeyA 始终是同一个物理键)。做快捷键通常用 code 更稳。

keyCode 为什么不推荐再用?

keyCode 已被标准废弃(deprecated),不同浏览器和布局下取值不一致,仅为兼容老代码保留。新项目应改用 key 或 code。

location 字段是干什么的?

location 标识同名键的位置,比如左 Ctrl 为 1、右 Ctrl 为 2、小键盘按键为 3,可用来区分主键盘和数字小键盘上的相同符号。

为什么有些组合键抓不到?

部分组合被操作系统或浏览器优先拦截(如某些 F 键、系统快捷键),事件不会冒泡到页面;这属于平台限制,网页无法覆盖。

输入法状态下键值正常吗?

中文等输入法合成阶段会触发 isComposing 状态,此时 key 可能是 Process,应在 compositionend 后再处理,避免误判按键。

有浏览器兼容性要求吗?

本工具兼容所有现代浏览器(Chrome、Firefox、Edge、Safari),无需安装任何插件或扩展。

可以离线使用吗?

首次加载后,部分功能在离线状态下仍可使用。页面资源加载后,核心逻辑完全在浏览器本地运行,不依赖网络。