2

我有以下代码:

$('.field').keypress(function(event) {
    if (event.keyCode == 27) alert(event.keyCode);
});

我需要抓住“Escape”按钮并做一些动作。但是现在它的代码不起作用。我曾尝试使用此代码:

$('.field').keypress(function(event) {
    alert(event.keyCode);
});

我按 Escape 按钮,但它不起作用(我没有看到任何警报)。请告诉我,我该如何解决?

4

1 回答 1

10

使用keydownorkeyup而不是keypress. keypress仅对产生字符的击键触发,而(按照惯例)Esc不会触发(即使某些字符集,例如 ASCII,确实有一个称为“转义”的字符)。

有关在 JavaScript 中处理击键的更多信息:JavaScript Madness:键盘事件

于 2012-07-19T13:21:13.633 回答