e.preventDefault ();поведение не работает в Firefox? - PullRequest
1 голос
/ 06 января 2012

У меня есть эта базовая функция для обработки ключевого события, все отлично работает. Тем не менее, в Firefox 9.0.1 кажется, что я не могу предотвратить событие по умолчанию, которое показывает закладки.

Есть ли какое-либо решение для предотвращения поведения по умолчанию в FF?

$(document).keydown(function(evt) {     
    if (evt.which == 66 && evt.ctrlKey) {                             
         if (evt.preventDefault) {
             evt.preventDefault();
         } else {
             evt.returnValue = false;
         }    
         alert("Ctrl+B pressed");
         return false;                      
    }
});

1 Ответ

2 голосов
/ 06 января 2012

Похоже на какую-то ошибку в отношении alert. Попробуйте это:

$(document).keydown(function(evt) {     
    if (evt.which == 66 && evt.ctrlKey) {                             
         if (evt.preventDefault) {
             evt.preventDefault();
         } else {
             evt.returnValue = false;
         }    
         console.log("Ctrl+B pressed");
         return false;                      
    }
});

Не открывает панель закладок для меня сейчас. Я полагаю, вы на самом деле не хотите alert не так ли? Я думаю, что вы можете просто вызвать свой метод, если он не содержит alert.

...