• 技术文章 >web前端 >js教程

    onkeyup,onkeydown和onkeypress的区别介绍_基础知识

    2016-05-16 17:19:23原创539
    msdn上有三者的区别:

    名称 说明

    onkeypress

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

    onkeyup

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

    onkeydown

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

    ======================
    复制代码 代码如下:











    当按下回车时,焦点从文本框移到按钮上。如果把它换成“onkeypress”,焦点不会转移,也不会失去。但是如果换成“onkeyup”,则失去焦点,页面重新载入。

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

    三者在事件的响应上还有一点不同,就是onkeydown 、onkeypress事件响应的时候输入的字符并没有被系统接受,而响应onkeyup的时候,输入流已经被系统接受。由于onkeydown 比onkeypress先执行,再根据上面的例子可以知道,onkeydown 触发的时候输入流正要进入系统,也就是说onkeydown 事件一完,输入流就进入了系统,无法改变。所以通过onkeydown 事件可以改变用户是按了哪个键;而onkeypress事件则是在输入流进入系统后触发的,但输入流暂未被系统处理,此时已经不能改变输入流了;onkeyup则是输入流被系统处理后发生的。
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:Javascript实现真实字符串剩余字数提示的实例代码_javascript技巧 下一篇:用js的for循环获取radio选中的值_javascript技巧
    千万级数据并发解决方案

    相关文章推荐

    • JavaScript知识点整理之获取元素和节点• 一文浅析angular中的组件模板• 值得了解的几个实用JavaScript优化小技巧• 一文搞懂JavaScript WebAPI• JavaScript学习理解之JSON(总结分享)
    1/1

    PHP中文网