我有以下代码:
$('.field').keypress(function(event) {
if (event.keyCode == 27) alert(event.keyCode);
});
我需要抓住“Escape”按下并做一些动作。但现在它的代码不起作用。我试过使用这段代码:
$('.field').keypress(function(event) {
alert(event.keyCode);
});
我按Escape按钮,但它没有工作(我没有看到任何警报)。请告诉我,我该如何解决?
答案 0 :(得分:10)
使用keydown
或keyup
而不是keypress
。 keypress
仅触发导致字符的键击,(按照惯例) Esc 不会(尽管某些字符集,例如ASCII,确实有一个名为“escape”的字符)。
有关在JavaScript中处理击键的更多信息:JavaScript Madness: Keyboard Events