Запретить действие по умолчанию при событии не работает…?

Я пытаюсь добавить на свой веб-сайт сочетания клавиш, чтобы сделать возможной быструю навигацию с помощью клавиатуры. Однако у меня возникла небольшая проблема с моей попыткой сочетания клавиш Alt + X. Событие работает нормально и возвращает false , как и должно, но в любом случае появляется меню «Файл» браузера. Я также пробовал метод preventDefault , но без изменений.

Урезанная версия скрипта:

document.documentElement.onkeydown = function(e) {
    e = e || window.event;
    switch( e.keyCode || e.which) {
        // some cases here - most notably:
        case 116: // F5 key
            if( activeFrame) {
                activeFrame.contentWindow.location.reload();
                // reloads an iframe if one is active
                return false;
            }
            break;
        // more cases...
        case 88: // X key
            if( e.altKey) {
                // do something
                return false;
            }
    }
}

Как отмечалось выше, переопределение действия клавиши F5 по умолчанию работает нормально - браузер перезагружает страницу только в том случае, если нет активных iframe. Я не совсем понимаю, как предотвратить появление меню при нажатии Alt + X.

8
задан mrtsherman 25 October 2011 в 02:02
поделиться