键盘检测
检测在线键盘检测:按键测试与键盘冲突
键盘出问题往往很具体:新买的机械键盘有一个键要用力按两下才出字,笔记本进过水之后某一行字母时好时坏,或者玩游戏时同时按方向和技能键会漏掉一个。这些都可以在这个页面上直接看出来——按下任意键,屏幕中央会用大字显示它,虚拟键盘上对应的键位同步点亮,右侧则按时间列出每一次按下与松开。
排查单键失灵时,建议一行一行地按过去,每按一个就确认日志新增了一条 down 记录,这样二十秒就能把整块键盘扫一遍。测键盘冲突时反过来,同时按住多个键不放,重点看「当前按下」这个数字和你手上的键数是否相等。切换到别的窗口再切回来时,页面会自动清空按住状态,所以不会出现假的「卡键」。
有几类按键页面天生收不到,这是浏览器的安全边界而不是工具的问题。Win/Command 键的单独按下、F11、Ctrl+W、F12 这类被系统或浏览器占用的组合,会在事件到达网页前就被截走。遇到这种情况,可以借助修饰键指示来间接判断:按住 Ctrl 时指示亮起,就说明这个键本身是好的。
整个检测在浏览器本地完成,按键内容不会离开你的电脑,也不需要安装任何驱动或客户端——这一点在检测公用电脑、或者在店里试键盘时尤其方便。测完点「清空」,统计和日志立刻归零,可以把键盘交给下一个人接着测。
功能一览
- 实时按键信息:大字显示当前按键,并列出 `key`、`code` 与 location(标准/左侧/右侧/数字区)
- 修饰键状态:Ctrl、Alt、Shift、Meta 四个指示会随按住状态点亮,松开即灭
- 虚拟键盘同步:屏幕键盘上对应键位高亮,多个键同时按住会同时点亮,可直接检查键盘冲突
- 长按去重:按住不放产生的系统自动重复不计入总数,只统计真实的按下动作
- 按键统计:总按键数、当前按下键数、最近一次按键三项实时更新
- 事件记录:按时间倒序记录 down/up 事件与对应 `code`,最多保留 60 条
- 失焦自动复位:切走窗口或标签页时清空按住状态,避免出现「某个键一直按着」的假象
- 一键清空:统计与日志随时归零,方便一个键一个键地逐个确认
常见问题
- 键盘某个键按了没反应,怎么确认是键盘坏了?
- 打开页面后逐个按下可疑的键,同时看三个地方:顶部大字是否变化、虚拟键盘上对应键位是否点亮、右侧日志是否新增一条 down 记录。如果同一个键反复按都毫无反应,而旁边的键正常,基本可以判断是这个键的触点或轴体故障。薄膜键盘多半是灰尘或液体残留导致,可以断电后清理;机械键盘可以拔下键帽把轴换个位置试,若故障跟着轴走就是轴坏了。
- 为什么按 Win 键、F11 或 Ctrl+W 时页面没有反应?
- 这不是工具的缺陷,而是系统和浏览器的正常行为。Win/Command 键会被操作系统接管去唤出开始菜单,F11 是浏览器的全屏快捷键,Ctrl+W 会直接关掉标签页,F12 和 Ctrl+Shift+I 会打开开发者工具,这些按键在事件到达网页之前就被拦截了。要验证这类键,可以单独轻按一次 Win 键(Meta 指示会亮起),或按住它再配合一个普通字母键,通过修饰键状态间接确认它是否工作。
- 怎么测键盘冲突,也就是同时按多个键有的不响应?
- 这项能力的专业说法是按键无冲突(N-Key Rollover,简称 NKRO),指键盘能同时正确识别多少个按键。测法是同时按住三到六个相邻的键,比如 W、A、S、D 加 Shift 和空格,然后看虚拟键盘上是不是每个键都同时高亮,以及「当前按下」的数字是否等于你实际按住的键数。如果按到第三、第四个键时先按的键熄灭、或新键没有任何反应,说明这几个键共用扫描线,属于键盘矩阵的设计限制,常见于薄膜键盘。
- 按键信息里的 key 和 code 有什么区别,该看哪个?
- `key` 是这个键当前输出的字符或名称,会随 Shift、输入法和键盘布局变化,同一个键可能显示 a 也可能显示 A。`code` 表示键在键盘上的物理位置,例如 `KeyA`、`Digit1`、`ShiftLeft`,不受布局影响。判断物理按键本身是否正常,看 `code` 更可靠;确认布局或输入法是否正确,则看 `key`。早年教程里的数字 keyCode 已废弃,`code` 是它的替代。
- 敲一次键出来两个字符,怎么判断是不是连击故障?
- 先区分两种情况:按住一个键不放时系统会自动重复,这是正常的,本工具已把自动重复过滤掉,总按键数只加一。测连击故障要用间隔一秒以上的节奏单独敲击十次,然后数日志里 down 记录的条数是否正好是十条。如果敲一次冒出两条 down,就是触点抖动、去抖失效导致的重复触发;机械键盘可以尝试换轴,还在保修期内建议直接返修。
- 小键盘、方向键和 Delete 这些键能测吗?
- 能测,只是屏幕上那把虚拟键盘只画了主键区(功能键行、数字行、字母区、修饰键和空格),没有画方向键、编辑键簇和数字小键盘,按这些键时不会有键位点亮。它们的信息会正常出现在顶部大字区和右侧日志里,数字小键盘上的键还会在 location 一栏显示为「数字区」,左右两个 Shift、Ctrl 则分别显示「左侧」「右侧」。看这两处即可确认是否正常。