keypress keyup 获取到的keycode不一样?
keypress获取的是键入的字符,a和A是两个不同的字符,这个值一定是可打印(printable)的,比如你按下Ctrl键就不会有keypress事件产生
keypress
键入的字符
a
A
可打印(printable)
Ctrl键
keydown和keyup获取的是触发事件的键,对于键盘来说,一个键可以对应两个或两个以上字符,如大小写,字母与希腊字母,数字与符号,通过组合按下shift/meta等键产生不同的输入效果,但是只有一个键名/键值,这两个事件获取的就是键值,键值是固定的,不会因为切换大小写,是否按下shift键等因素而改变
keydown
keyup
触发事件的键
大小写
字母与希腊字母
数字与符号
shift/meta等键
键名/键值
shift
keypress
获取的是键入的字符
,a
和A
是两个不同的字符,这个值一定是可打印(printable)
的,比如你按下Ctrl键
就不会有keypress
事件产生keydown
和keyup
获取的是触发事件的键
,对于键盘来说,一个键可以对应两个或两个以上字符,如大小写
,字母与希腊字母
,数字与符号
,通过组合按下shift/meta等键
产生不同的输入效果,但是只有一个键名/键值
,这两个事件获取的就是键值,键值是固定的,不会因为切换大小写,是否按下shift
键等因素而改变