我在http://www.asquare.net/javascript/tests/KeyCode.html
上测试输入keycode
和keydown
事件中的 keyup
不同。为什么会这样?另外我们能够找出从给定表中按下的键吗?
我知道我们通常使用String.fromCharCode()
,但我应该使用哪个值,229或49,还是平均值? LOL
我在Windows 7上使用的是Chrome版本44.0.2403.155 m。
答案 0 :(得分:0)
见Legacy KeyboardEvent
supplemental interface(强调我的):
,这就是原因键盘的浏览器支持传统上依赖于三个ad-hoc 属性,
keyCode
,charCode
和which
。这三个属性都返回一个代表的数字代码 按下键的某些方面:
keyCode
是键的索引 本身。charCode
是字符键的ASCII值。which
是可用的字符值,否则是键索引。 这些属性的值以及可用性 属性在平台,键盘语言中不一致 和布局,用户代理,版本,甚至事件类型。
作者应该使用
KeyboardEvent.key
属性而不是。{charCode
和keyCode
属性。