Событие 'Alt' не работает в Firefox - PullRequest
0 голосов
/ 03 апреля 2012

я пытаюсь захватить эту клавишу: alt + стрелка вниз, alt + стрелка вверх. Сначала я фиксирую Alt Key Down:

var isAlt = false;
$(document).keydown(function (e) {  
    if(e.which == 18){isAlt=true;} 
}).keyup(function (e) {
    if(e.which == 18){isAlt=false;}
});

этот код в порядке, и обнаружен alt keyup.

Но если я добавлю стрелку вниз, когда стрелка нажата, это нормально, но после alt keyup не обнаруживается:

var isAlt = false;
$(document).keydown(function (e) {  
    if(e.which == 18){isAlt=true;}else{
        if(e.which == 38 && isAlt == true) {
             //action code here work
             console.log('action ok');
        }
    }
}).keyup(function (e) {
    if(e.which == 18){isAlt=false;}
});

Вы можете попробовать это на консоли, и после журнала 'action ok' вам нужно снова нажать клавишу alt для "isAlt = false". Но этот код отлично работает на Chrome.

У кого-нибудь есть идея исправить эту ошибку?

1 Ответ

2 голосов
/ 03 апреля 2012

Вам необходимо проверить свойство event.altKey: https://developer.mozilla.org/en/DOM/KeyboardEvent

...