JavaScript 鍵盤事件測試器

聚焦測試區域後按鍵,即時查看此瀏覽器收到的 keydown、keyup、key、code、location、repeat、修飾鍵、輸入法組合狀態與事件時間資訊。

事件捕捉與紀錄控制

篩選只會影響表格顯示,不會刪除記憶體中的完整紀錄。

等待鍵盤事件 Tab 會保留原生焦點導覽;暫停、失去焦點或頁面隱藏時會清除目前按下的按鍵和時間基準,但歷史紀錄仍會保留。
保留紀錄
0
目前按下的按鍵
0
keydown / keyup
0 / 0
已移除最早紀錄
0

目前按下的按鍵

  • 目前沒有持續按下的按鍵。
先聚焦測試區域,再按鍵查看事件。
目前事件摘要 等待事件
目前 key 等待瀏覽器事件
code
location
repeat
事件間隔

聚焦捕捉區後按鍵;本頁只記錄該區域收到的事件,不監聽系統全域鍵盤。

鍵盤事件紀錄

記憶體最多保留 500 筆;表格顯示目前篩選後最近 100 筆,下載檔案包含記憶體中的完整紀錄。

目前顯示 0 筆;記憶體保留 0 筆。
#typekeycodelocationrepeatisComposingmodifiersΔ mshold ms
目前篩選條件尚未找到符合的事件。

事件類型與時間間隔

事件類型數量

比較目前記憶體紀錄中的 keydown、keyup、自動重複與組合輸入事件數量。

連續事件間隔分布

直方圖只使用同一連續記錄階段內大於 0 的事件間隔;暫停、失去焦點和頁面隱藏會重設時間基準。

深入了解

事件欄位與時間計算

key 描述目前配置下的字元或語意,code 描述相對穩定的實體位置,location 用來區分標準區、左右側和數字鍵盤。事件間隔使用連續紀錄的 Event.timeStamp 差值;同一 code 的首次非 repeat keydown 與後續 keyup 可配對計算按住時長。

內部保留未四捨五入的毫秒值,頁面通常顯示到小數第二位;不會跨越暫停、失去焦點或頁面隱藏階段計算事件間隔與按住時長。

事件類型必須是 keydown 或 keyup,時間戳必須是非負有限值;倒序、無效或超過 10 分鐘的時間差不會進入間隔與按住時長統計。

瀏覽器邊界與紀錄限制

本工具只分析目前頁面測試區域實際收到的 KeyboardEvent。Tab 保留原生導覽而不記錄;瀏覽器或系統快捷鍵、Fn 和部分媒體鍵可能無法捕捉。key 會受配置和輸入法影響,code 不能取代字元語意。記憶體紀錄最多 500 筆,重新整理或關閉頁面後就會消失。

KeyboardEvent 的 key 和 code 有什麼不同?

key 描述目前配置和修飾鍵狀態下產生的字元或語意,code 描述相對穩定的實體按鍵位置。排查配置或字元問題時看 key;排查固定按鍵或遊戲控制時,通常也要一起記錄 code。

如何查看 keydown 和 keyup 事件?

點擊或按 Tab 讓捕捉區取得焦點後按鍵。頁面會依收到的順序記錄 keydown 與 keyup,並顯示 repeat、修飾鍵、組合狀態、事件間隔,以及能夠配對時的按住時長。

KeyboardEvent location 有什麼用途?

location 通常用 0 表示標準區、1 表示左側、2 表示右側、3 表示數字鍵盤,可用來區分左右 Shift、Ctrl、Alt、Meta,以及主鍵區和數字鍵盤按鍵。

隱私、來源與授權

所有事件和紀錄只在目前瀏覽器的頁面記憶體中處理,不上傳、不呼叫第三方 API,也不寫入 URL 或本機儲存空間。只有在使用者主動操作後才會下載或複製。

未重用第三方執行程式碼或資源;演算法與介面均為獨立實作,外部連結只用來說明瀏覽器事件標準。

標準與方法來源