JavaScript 中提供keydown,keypress,keyup 三种事件。从字面上理解的话,keyup就是被按的键释放了(弹起来了)才触发;keydown 和keypress相对而言比较容易混淆,下面就比较小keydown和keypress的区别:
onkeydown : 触发时机 键盘键被按下,返回false取消默认动作。不区分大小键盘,不区分大小写字母,基本支持所有按键,其他博文说不支持【printScreenSysRq】,但是测试也是支持的。
onkeypress: 触发时机 键盘键被按下,返回false取消默认动作。不区分大小键盘(一般利于辨别输入是否是数字),区分大小写。很多其他按键不支持。
用途:
keydown:一般情况下用于捕捉快捷键,在JavaScript中可以使用event.ctrlkey,event.altkey或者直接用17,18表示 "ctrl"和”alt"按键。
keypress: 一般用于捕获按键所获取的字符,由于区分大小写,和不分大小键盘,比较利于辨别输入字符;
触发顺序:
keydown ----> keypress ----> keyup. 如果keydown中,返回false会阻止kepress激活,导致无法运行keppress事件