我在上http://www.asquare.net/javascript/tests/KeyCode.html为什么keydown和keyup事件中的keycode不同?
keycode
测试输入和keyup
事件是不同的。为什么会发生?另外,我们能够找出从给定表格中按下什么键?
我知道我们通常使用String.fromCharCode()
,但我应该使用哪个值,229或49,还是他们的平均值? LOL
我使用的是Windows上的Chrome版本44.0.2403.155米7.
我在上http://www.asquare.net/javascript/tests/KeyCode.html为什么keydown和keyup事件中的keycode不同?
keycode
测试输入和keyup
事件是不同的。为什么会发生?另外,我们能够找出从给定表格中按下什么键?
我知道我们通常使用String.fromCharCode()
,但我应该使用哪个值,229或49,还是他们的平均值? LOL
我使用的是Windows上的Chrome版本44.0.2403.155米7.
见Legacy KeyboardEvent
supplemental interface(重点煤矿):对于键盘
浏览器支持传统上依赖于三个特设 属性,
keyCode
,charCode
和which
。所有这三个属性都返回一个数字代码,代表 按下的某个方面:
keyCode
是密钥 本身的索引。charCode
是字符键的ASCII值。which
是可用的字符值,否则是密钥索引。 这些属性的值,和 属性的可用性,是跨平台,键盘语言 和布局,用户代理,版本,甚至事件类型不一致。
这就是为什么,根据Legacy Key Attributes,
作者应该使用
KeyboardEvent.key
属性而不是charCode
和keyCode
属性。