在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