键盘码 / 事件查看器
按下任意键查看其 JavaScript 键码、键名和事件属性
按下任意键...
使用方法
打开工具
无需设置——工具在浏览器中即时加载。
互动与探索
使用鼠标、键盘或触控即时互动。
随时随地使用
桌面与移动设备皆可使用——随时随地练习或创作。
为什么使用此工具
100% 免费
没有隐藏费用,没有付费等级——所有功能完全免费。
无需安装
完全在浏览器中运行。无需下载或安装任何软件。
隐私且安全
您的数据永远不会离开您的设备。不会上传至任何服务器。
支持移动设备
完全响应式设计——在手机、平板或桌面电脑上均可使用。
JavaScript Keyboard Events: KeyCodes, Keys, and Codes
Key Takeaways
- The deprecated keyCode property has been replaced by the modern key (character value) and code (physical key) properties.
- Understanding the difference between key and code is essential for building keyboard shortcuts and games that work across keyboard layouts.
- All keyboard event detection happens in your browser — no keystrokes are recorded or transmitted.
Keyboard event handling is fundamental to interactive web applications — from keyboard shortcuts and form validation to games and accessibility features. JavaScript keyboard events have evolved significantly, with the deprecated keyCode property being replaced by the more intuitive key and code properties. Understanding these properties and their differences is essential for building robust keyboard interactions.
The key and code properties are supported in 97%+ of global browsers, making keyCode truly obsolete.
Browser Support
Key Concepts
key vs. code Properties
event.key represents the character value ('a', 'A', 'Enter', 'ArrowUp'). event.code represents the physical key ('KeyA', 'ShiftLeft', 'Digit1'). Use key for text input and code for keyboard shortcuts.
Event Types: keydown, keyup, keypress
keydown fires when a key is pressed (repeats while held). keyup fires when released. keypress is deprecated. Use keydown for most interactions and keyup for detecting when modifier keys are released.
Modifier Keys
event.ctrlKey, event.shiftKey, event.altKey, and event.metaKey (Cmd on Mac) are boolean properties that indicate which modifier keys were held during the event. Use them for keyboard shortcut combinations.
Layout-Independent Keycodes
event.code always refers to the physical key position regardless of keyboard layout. 'KeyA' is always the leftmost home-row key, even on AZERTY keyboards where it types 'q'. Use code for games, key for text.
Pro Tips
Use event.key for accessibility — screen readers and assistive technologies rely on semantic key values, not physical positions.
Always handle both Ctrl (Windows/Linux) and Meta/Cmd (Mac) for cross-platform keyboard shortcuts.
Call event.preventDefault() to stop default browser behavior for keyboard shortcuts (like Ctrl+S) but be careful not to break expected behaviors.
Use the 'isComposing' property to avoid interfering with IME (Input Method Editor) composition for CJK language input.
All keyboard event detection is performed entirely in your browser. No keystrokes are recorded, logged, or transmitted to any server.