- enter的keyCode为13,键盘主区域和数字小键盘的entry的keyCode相同;
- 按键事件的触发先后顺序为:onkeydown、onkeypress、onkeyup: 其中onkeydown、onkeypress是按下触发,除触发先后顺序区别外,若按住entry不放开,onkeydown会循环多次触发,onkeypress只会触发一次;onkeyup则是按键弹起时触发一次;
- jQuery封装兼容了主流浏览器,代码如下:
//按下回车键触发查询 $(function(){ document.onkeypress = function(e){ var ev = document.all ? window.event : e; if(ev.keyCode==13) { alert("按下回车键触发查询"); search(); } } });
- 原生js需要对浏览器进行判断、区别对待,代码如下:
//1.FireFox和Opera //var keycode = e.which; //2.IE //var keycode = event.keyCode; //3.比较兼容的方法 /*在旧版IE下,按键信息对象并不是直接传递到函数中的,所有的事件对象是存储在window.event中的,所以为了兼容旧版IE,我们可以先判断一下window.event这个对象存在不存在,若存在,说明是旧版IE浏览器,如果不存在,说明是chrome、火狐之类的新式浏览器,改良版如下:*/ document.onkeyup = function (e) { //如果window.event对象存在,就以此事件对象为准 if (window.event) { e = window.event; } var code = e.charCode || e.keyCode; if (code == 13) { alert("按下回车键触发查询"); search(); } }
jQuery追踪按键事件
最新推荐文章于 2021-11-28 22:09:12 发布