Control
ControlLeft
keyCode 17
ControlLeft 键码 — keyCode 17
修饰键
ControlLeft 的 keyCode 是 17,key 是 Control,location 为 1。它和 ControlRight 共用这个号。
单按没有作用,要压在别的键上。左右共用一个 keyCode。
- code(位置)
- ControlLeft
- key(美式布局)
- Control
- keyCode(已废弃)
- 17
- 十六进制
- 0x11
- location
- 1 · 左
- 是否输入字符
- 否
- 共用 keyCode
- ControlRight
在代码里
用 code 比较,换了键盘布局也还能抓住同一个位置。
window.addEventListener('keydown', e => {
if (e.code === 'ControlLeft') {
// Control
}
});code 与 key 的区别
code 是键盘上的物理位置,韩文键盘还是法文键盘都一样。key 是当下敲出来的字符,会变——同一个位置可能是 a、A 或 ㅁ。问“按了哪个位置”用 code,问“输入了什么”用 key。
keyCode 已从标准中移除。新代码请用 code 或 key,这里的数字用来读旧代码。
同类的键
怎么看这一页
- code 是位置,key 是敲出来的字符。做快捷键要按 code 比较。
- keyCode 已废弃,只在读旧代码时用。
- 左右 Shift 的 keyCode 相同,靠 location 区分。
- 数字行的 1 和小键盘的 1 是两个键——49 和 97。
常见问题
Q. ControlLeft 的 keyCode 是多少?
17,十六进制是 0x11。
Q. 代码里怎么判断 ControlLeft?
用 e.code === 'ControlLeft' 比较。用 keyCode 判断,会随浏览器和键盘布局摇摆。
Q. 这个键的 location 是多少?
1。它和 ControlRight 共用 keyCode,要区分就得靠这个值。
Q. 按这个键会输入字符吗?
不会。key 是 Control,不输入任何字符。