在页面的任何位置捕获回车键按下

91

我需要在登录页面的任何位置捕获回车键按下事件。这将启动一个登录尝试。

使用jQuery,我该如何实现?我应该将其链接到body标签吗?

2个回答

150
$(document).keypress(function(e) {
  if(e.which == 13) {
    // enter pressed
  }
});

5
我尝试了一下,发现按下箭头键时不会触发keypress事件,但是会触发keydown事件! - akotian
@akotian:非常正确!但是我喜欢canoe答案中更早、更详细的关于keypress vs. keydown的描述。 - HoldOffHunger

32

按下键盘上的按键会触发 keydown 事件。
当按下的键通常会产生字符值时,会触发 keypress 事件。

$(document).keydown( function(event) {
  if (event.which === 13) {
    // login code here
  }
}); 

1
这比 keypress 更好用。例如,我可以使用 keypress 检测 ESC 键是否被按下。但是 keydown 完美地工作。谢谢! - Laszlo the Wiz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接