jQuery追踪按键事件

  1. enter的keyCode为13,键盘主区域和数字小键盘的entry的keyCode相同;
  2. 按键事件的触发先后顺序为:onkeydown、onkeypress、onkeyup: 其中onkeydown、onkeypress是按下触发,除触发先后顺序区别外,若按住entry不放开,onkeydown会循环多次触发,onkeypress只会触发一次;onkeyup则是按键弹起时触发一次;
  3. jQuery封装兼容了主流浏览器,代码如下:
    //按下回车键触发查询
    $(function(){  
         document.onkeypress = function(e){   
        	 var ev = document.all ? window.event : e;
        	 if(ev.keyCode==13) {
        		 alert("按下回车键触发查询");
        		 search();
        	 }
        }
     });
  4. 原生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();  
        }  
    }
    




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值