2016-10-10 3 views
0

Прежде всего, я знаю, что есть много вопросов по этому вопросу уже, я искал их, и большинство из них - несколько лет, вот основная причина, по которой я спрашиваю.Захват Ctrl + W в браузере

я своего рода нужно захватить Ctrl +W да или да во всех браузерах (по крайней мере, наиболее распространенными из них, Chrome, Firefox и IE11/EDGE, возможно, Safari).

Я бегу Оперативник виртуализации системы внутри DIV и я хочу, чтобы блокировать Ctrl +W, поэтому браузер не закрывается, и пользователь может использовать эту команду в virutalization (и если я могут также другие команды, такие как Ctrl + S и т. д., но самая важная из них - команда закрытия).

Я искал плагины, хаки и ванильный код JS, но никто не работает, возможно, Ctrl +W является наиболее сложной командой, чтобы захватить. Вы, ребята, знаете, возможно ли это? И если это так, любые идеи о том, как я мог это сделать?

Спасибо.

+1

браузеры не изменились за эти несколько лет, все ответы по-прежнему применяются - onbeforeunload - ваш лучший выбор –

+0

Я постараюсь поиграть onbeforeunload, но люди в комментариях/ответа когда-то говорили, что не работают для них. Тем не менее, я попробую, спасибо – Mese

ответ

0

На всякий случай кто-то попадает сюда.

Как сказал Jaromanda в разделе комментариев (и многие другие в других сообщениях) window.onbeforeunload - наш лучший союзник. В этом конкретном случае это не помогает мне, так как это вызывает предупреждение, и я просто хочу захватить его, чтобы он действительно не выполнялся. Не нашли ответа на то, чтобы просто захватить Ctrl + W, так как это сложная вещь, чтобы «прервать» команду закрытия.

EDIT # 1: Кажется, проблема в Chrome, вы можете захватить эти команды в Firefox (не тестировали их в IE/Edge или Safari). Если кто-то знает/придумывает какие-либо идеи, они будут с благодарностью приняты.

+0

, вы действительно не можете остановить функцию операционной системы (например, конечную программу) на веб-странице –

+0

Но я могу остановить Ctrl + S, например, я могу сделать это и показать консоль. log например :( – Mese

+0

о, вы не упомянули, что можете это сделать –

Смежные вопросы