Команды сочетания клавиш в Chrome, не запрещающие действие по умолчанию
Поэтому я пишу библиотеку ярлыков, и по большей части она работает, за исключением проблемы, которую я сразу обнаружил, в Chrome (другие браузеры не тестировались, так как я нахожусь в книге Chrome), что при нажатии ctrl+n
это создает новое окно браузера. В основном в jist мой код проверяет, определен ли текущий выбор ключа и preventDefault
и запустить exec
Функция этой команды.
то есть.
if(joinedKeys in commands.cmd)
e.preventDefault();
commands.cmd[joinedKeys].exec();
Я даже пытался сделать это
document.addEventListener("keydown",function(e){
e.preventDefault();
});
//as well as window.addEvent...
Ни одна из них не работает. Любые предложения, как остановить действие по умолчанию браузеров?
1 ответ
См. /questions/5865996/yarlyiki-brauzera-zahvata-javascript-ctrl-t-n-w/5866009#5866009
В Chrome4 определенные комбинации управляющих клавиш зарезервированы только для использования браузером и больше не могут быть перехвачены клиентским JavaScript на веб-странице. Эти ограничения не существовали в Chrome3 и несовместимы как с Firefox3/3.5, так и с IE7/8 (в Windows).