现代浏览器标准中已不再使用keyCode
属性,而改用event.key
,但是掌握常用按键及其传统keyCode
值对我们的日常开发仍会有很大的帮助,本文分享了JavaScript 中提供的所有键盘按键和 keyCode
值。
event.key
和keyCode
的区别
event.key
提供了按下的键的值,使代码更容易理解和维护。例如,按下 A 键会产生"a "
或"
A"
,这取决于是否同时按下了 shift 键。keyCode
是一个数值,已被弃用,未来的网络标准可能不再支持。它的可读性较差,如果不参考代码列表,很难确定该值代表哪个按键。
常用键值及其keyCode
下面列出了现代开发实践中的event.key
值及其相应的keyCode
值(已弃用),以供参考:
字母及数字键
- A-Z:
event.key
为"a"
至"z"
(小写不含 shift 键,大写含 shift 键),keyCode
为65
至90
- 0-9:
event.key
为"0"
至"9"
,顶行数字的keyCode
为48
至57
特殊字符(因键盘布局而异)
- 空格:
event.key
为""
,keyCode
为32
- 回车:
event.key
为"Enter"
,keyCode
为13
- Escape:
event.key
为"Escape"
,keyCode
为27
控制键
- Shift:
event.key
为"Shift"
,keyCode
为16
- Control(Ctrl):
event.key
为"Control"
,keyCode
为17
- Alt:
event.key
为"Alt"
,keyCode
为18
- Backspace:
event.key
为"Backspace"
,keyCode
为8
- Tab:
event.key
为"Tab"
,keyCode
为9
箭头键
- 左:
event.key
为"ArrowLeft",keyCode
为37
- 上:
event.key
为"ArrowUp"
,keyCode
为38
- 右:
event.key
为"ArrowRight",keyCode
为39
- 下:
event.key
为"ArrowDown"
,keyCode
为40
功能键
- F1-F12:
event.key
为"F1"
至"F12"
,keyCode
为112
至123
检测按键操作事件
检测按键动作时,请使用event.key
:
document.addEventListener('keydown', (event) => {
console.log(`Key pressed: ${event.key}`);
});
为什么要从keyCode
迁移到event.key
从keyCode
转向event.key
有几个原因:
- 可读性:
event.key
更易于理解,无需参考对应文档。 - 国际化:
event.key
对按键物理位置的依赖性较小,因此更适合国际应用。 - 过时和未来支持: 现代网络标准建议不要使用
keyCode
,因为未来的浏览器和设备可能不支持它。
想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » JavaScript 中提供的所有键盘按键和按键代码
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » JavaScript 中提供的所有键盘按键和按键代码