第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > onkeydown onkeypress和onkeyup的区别介绍

onkeydown onkeypress和onkeyup的区别介绍

时间:2021-08-09 15:37:42

相关推荐

onkeydown onkeypress和onkeyup的区别介绍

文章目录

触发时机总结:不同

触发时机

onkeydown

这个事件在用户按下任何键盘键(包括系统按钮,如箭头键和功能键)时发生。

onkeypress

这个事件在用户按下并放开任何字母数字键时发生。系统按钮(例如,箭头键和功能键)无法得到识别。

onkeyup

这个事件在用户放开任何先前按下的键盘键时发生。

测试代码

window.onload = function () {window.onkeydown = function (event) {event = event || window.event;alert('οnkeydοwn=' + event.which || event.keyCode);};window.onkeypress = function (event) {event = event || window.event;alert('οnkeypress=' + event.which || event.keyCode);};window.onkeyup = function (event) {event = event || window.event;alert('οnkeyup=' + event.which || event.keyCode);};}

总结:

测试发现onkeydown 事件最先执行,其次是onkeypress,最后是onkeyup;onkeydown 和onkeypress会影响onkeyup的执行。三个事件同事在的话,都是alert的话,只会弹出2个alert,up事件的alert不会弹出。

不同

三者在事件的响应上还有一点不同,就是onkeydown 、onkeypress事件响应的时候输入的字符并没有被系统接受,而响应onkeyup的时候,输入流已经被系统接受。由于onkeydown 比onkeypress先执行,再根据上面的例子可以知道,onkeydown 触发的时候输入流正要进入系统,也就是说onkeydown 事件一完,输入流就进入了系统,无法改变。所以通过onkeydown 事件可以改变用户是按了哪个键;而onkeypress事件则是在输入流进入系统后触发的,但输入流暂未被系统处理,此时已经不能改变输入流了;onkeyup则是输入流被系统处理后发生的。

参考:/article/42263.htm

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。