jquery判断是否按下Enter(回车)和TAB键

    在jquery中,通过如下的方法,判断是否按下了Enter(回车)

$('#textBox').keypress(function(event){  
    var keynum = (event.keyCode ? event.keyCode : event.which);  
    if(keynum == '13'){  
        alert('You pressed a "Enter" key in textbox');    
    }  
});  
  
$(document).keypress(function(event){  
    var keynum = (event.keyCode ? event.keyCode : event.which);  
    if(keynum == '13'){  
        alert('You pressed a "Enter" key in somewhere');      
    }  
});

    注意,Netscape/Firefox/Opera是支持 event.which去获得键的ASCII码,而IE是同时支持event.keyCode和event.which的。


    TAB的keynum是9。

    最后,取得keynum的流程也可以使用if进行判断。

补充:jQuery获取 Ctrl + Enter  Shift + Enter

    参考:http://www.cnblogs.com/top5/archive/2010/02/01/1660742.html

    jQuery中对键盘事件进行了修正,调用函数的时候传入事件即可,通过事件的which可以找到键码。不过当有组合键的时候,需要注意一下。

    如Ctrl + Enter,虽然都是用e.ctrlKey,但是Enter键的键码不是始终为13了。

    在FireFox中,判断Ctrl + Enter是e.ctrlKey && e.which == 13

    而在IE6中,判断Ctrl + Enter是e.ctrlKey && e.which == 10

    示例:

$(document).keypress(function(e){
        if(e.ctrlKey && e.which == 13 || e.which == 10) { 
                $("#btn").click();
        } else if (e.shiftKey && e.which==13 || e.which == 10) {
                $("#btnv").click();
        }          
 })

                                                                                                                                                                                                        10/21/2014, Tuesday

    该博客的博文总结:http://www.cnblogs.com/top5/category/202399.html


   

你可能感兴趣的:(jquery)