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