概述
所谓键盘事件就是在按键被敲击时触发的一些事件,常见的键盘事件有:keyup(键盘抬起事件)、keydown(键盘按下事件)、keypress(键盘按下并抬起触发事件)
keydown
keydown
事件会在按键按下时触发
keypress
keypress
在按键按下并抬起时触发事件;但是一些特殊功能的按键不会触发该事件,例如:ALT, CTRL, SHIFT, ESC
keyup
keyup
按键抬起时会触发事件
注意:如果一个对象绑定了上述三个事件,触发顺序为 keydown
、keypress
、keyup
;当按键按下不松时会频繁触发 keydown
和 keypress
事件(先触发 keydown 后触发 keypress)
为 输入框 添加键盘事件时推荐使用 keyup
事件,因为触发 keydown
和 keypress
时文字还没有落入文本框中。
document.onkeyup = function() {
console.log('3-触发了 keyup 事件!')
}
document.onkeydown= function() {
console.log('1-触发了 keydown事件!')
}
document.onkeypress= function() {
console.log('2-触发了 keypress 事件!')
}
扩展:keydown 和 keyup 不区分大小写,keypress 可以区分大小写(大小写字母的 ASCII 值不同)。