3 回答
TA贡献1848条经验 获得超10个赞
注:keyCode被越来越不赞成使用key来代替。
function keyPress (e) {
if(e.key === "Escape") {
// write your logic here.
}
}
这是jsfiddle
keyCode 被弃用
看起来keydown和keyup工作,即使keypress可能没有
$(document).keyup(function(e) {
if (e.key === "Escape") { // escape key maps to keycode `27`
// <DO YOUR WORK HERE>
}
});
jQuery的哪个键代码用于转义键
TA贡献1828条经验 获得超13个赞
该keydown事件将对Escape正常运行,并具有允许您keyCode在所有浏览器中使用的优势。另外,您需要将侦听器附加到document主体上,而不是附加到主体上。
keyCode现在正处于弃用过程中,大多数现代浏览器key现在都提供该属性,尽管您现在仍需要一个不错的浏览器支持回落(撰写本文时,Chrome和Safari的当前版本不支持它)。
evt.key现在所有现代浏览器均支持2018年9月更新。
document.onkeydown = function(evt) {
evt = evt || window.event;
var isEscape = false;
if ("key" in evt) {
isEscape = (evt.key === "Escape" || evt.key === "Esc");
} else {
isEscape = (evt.keyCode === 27);
}
if (isEscape) {
alert("Escape");
}
};
Click me then press the Escape key
TA贡献1803条经验 获得超3个赞
使用JavaScript可以检查jsfiddle是否正常工作
document.onkeydown = function(evt) {
evt = evt || window.event;
if (evt.keyCode == 27) {
alert('Esc key pressed.');
}
};
使用jQuery您可以检查jsfiddle是否正常工作
jQuery(document).on('keyup',function(evt) {
if (evt.keyCode == 27) {
alert('Esc key pressed.');
}
});
添加回答
举报