2016-02-12 55 views
3

我想知道何时在输入元素上按下键。在Chrome 47.0.2526.106米上,Esc键取消了焦点,但JavaScript无法捕获keyup,​​或keypress事件。按下焦点元素上的退出键时不会引发键事件

演示:https://jsfiddle.net/gstvj9uq/

$("input").keydown(function() { 
 
    alert('keydown'); 
 
}); 
 

 
$("input").keyup(function() { 
 
    alert('keyup'); 
 
}); 
 

 
$("input").keypress(function() { 
 
    alert('keypress'); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="text">

谁能给一个解决方案赶上逃生的一个输入键下/上/下压事件?然而,IE 10可以抓住这个事件。

+0

完美的作品对我很好,这里是如何捕捉它 - > https://jsfiddle.net/gstvj9uq/5/ – adeneo

+0

@ adeneo你是先点击输入,然后按esc键?你使用的是Chrome吗? – Gqqnbig

+0

是的,我使用的是Chrome,并且我专注于输入并点击了转义,而且它工作得很好? – adeneo

回答

10

也有同样的问题,原来是v扩大。没有这一点,在按下逃生时不会失去焦点。

注意,按键事件从来没有发射逃生,只有KeyDown和KEYUP

+0

哇很好,赶紧给我节省了时间。 – jamie

+0

我知道我不应该用评论来写这样的东西,但是:谢谢! + 1 + 1 + 1。是的,令人难以置信的捕获。 – maxedison

相关问题