Я настроил функцию нажатия клавиш и хочу делать разные вещи в зависимости от того, нажаты ли клавиши со стрелками влево, вправо, вверх или вниз. Это работает с использованием оператора switch, но я также хотел бы что-то сделать, когда нажата ЛЮБАЯ клавиша со стрелкой, но не могу понять. Мой код:
$(document).keydown(function (e) {
var keyCode = e.keyCode || e.which,
arrow = {left: 37, up: 38, right: 39, down: 40 },
switch (keyCode) {
case arrow.left:
// do something left
break;
case arrow.right:
// do something right
break;
}
});
Мне бы очень хотелось строку кода, где я мог бы проверить, нажата ли какая-либо клавиша со стрелкой, но не могу понять это, например:
case arrow:
// do something for any arrow keys
break;
Простое использование «стрелки регистра», похоже, не работает. Может ли кто-нибудь помочь?
Заранее спасибо!
РЕДАКТИРОВАТЬ: Спасибо за вашу помощь всем. Вот мой окончательный код, для тех, кто ищет:
$(document).keydown(function (e) {
if (e.which >= 37 && e.which <= 40) {
$('p.key-notification').fadeOut('slow');
}
var keyCode = e.keyCode || e.which,
arrow = {left: 37, up: 38, right: 39, down: 40 },
switch (keyCode) {
case arrow.left:
// do something left
break;
case arrow.right:
// do something right
break;
}
});
switch
. - person ahren   schedule 18.07.2012