2016-02-12 57 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

相關問題