IE、Firefox、Chromeでエスケープキーの押下を検出するにはどうすればいいですか?以下のコードはIEでは機能し警告を発します27
が、Firefoxでは警告を発します。0
$('body').keypress(function(e){
alert(e.which);
if(e.which == 27){
// Close my modal window
}
});
ベストアンサー1
注keyCode
:廃止される代わりにを使用してくださいkey
。
function keyPress (e) {
if(e.key === "Escape") {
// write your logic here.
}
}
コードスニペット:
var msg = document.getElementById('state-msg');
document.body.addEventListener('keydown', function(e) {
if (e.key == "Escape") {
msg.textContent += 'Escape pressed:'
}
});
Press ESC key <span id="state-msg"></span>
keyCode
そしてキーを押すは非推奨です。
どうやら機能している
keydown
ようですkeyup
。
$(document).keyup(function(e) {
if (e.key === "Escape") { // escape key maps to keycode `27`
// <DO YOUR WORK HERE>
}
});