Предотвратить закрытие <dialog>при нажатии клавиш Es c in Chrome - PullRequest
0 голосов
/ 04 апреля 2020

Google Chrome закрывает <dialog> элементы при нажатии Es c. Кажется, реагирует на нажатие клавиши.

Firefox нет. Это ожидаемое поведение, так как легко выполнить закрытие при любом нажатии клавиши.

Как заставить Google Chrome оставлять диалоговые окна открытыми на Es c?

Пожалуйста, смотрите скрипку https://jsfiddle.net/zeqo7kaf/1/

Я реализовал window, document, body, dialog события клавиш (вверх, вниз и нажаты), чтобы предотвратить распространения, однако мне кажется, что это выше событий dom.

(чтобы увидеть диалоги в Firefox, go в about:config и установить свойство dom.dialog_element.enabled в true).

1 Ответ

1 голос
/ 04 апреля 2020

Вы можете попробовать использовать cancel событие: MDN

dialog.addEventListener('cancel', (event) => {
    event.preventDefault();
});

Модифицированный JSFiddle: https://jsfiddle.net/7et3hf8p/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...