javascript - 防止
问题描述
按下 Esc 时, Google Chrome 会关闭<dialog>
元素。似乎对keydown做出反应。
火狐没有。这是预期的行为,因为关闭任何按键都很容易实现。
如何让谷歌浏览器在 Esc 上打开对话框?
请看小提琴https://jsfiddle.net/zeqo7kaf/1/
我已经实现了window
's, document
's, body
's, dialog
' 键事件(向上、向下和按下)以防止传播,但在我看来,这在 dom 事件之上。
(为了在 Firefox 中查看对话框,请转到about:config
并将属性设置dom.dialog_element.enabled
为true
)。
解决方案
您可以尝试使用cancel
事件:MDN
dialog.addEventListener('cancel', (event) => {
event.preventDefault();
});
修改后的 JSFiddle:https ://jsfiddle.net/7et3hf8p/
推荐阅读
- bash - 我可以更改一个文件或所有文件的修改日期,只是年份吗?
- python - 当某些数据有很强的异常值时,如何使用 SARIMA 预测?
- visual-studio-code - 如何在 Visual Studio Code 上显示面包屑?
- automation - 为 Progress Openedge ABL 自动创建 ERD 的选项或工具是什么?
- python-3.x - tensorflow model.load 问题
- imebra - 如何使用 Imebra 从 DICOM 文件中获取所有数据
- input - Flutter - SingleChildScrollView 在键盘弹出时放置在屏幕顶部
- ruby-on-rails - 更新 Active Storage 附件文件名
- c++ - OpenCV Find_Package Emscripten - WebAssembly
- excel - 根据其他列的标准合并重复值