是否有可能在标准的JavaScript提示/确认弹出框中删除键盘访问?

Is it possible to remove keyboard access in a standard JavaScript prompt/confirm pop-up?

本文关键字:删除 键盘 访问 确认 标准 有可能 JavaScript 提示 是否      更新时间:2023-09-26

是否可以在标准JavaScript提示符或确认弹出框上停止键盘访问?例如,如果我有如下内容:

var name = prompt("Enter your name:");

默认情况下,有"确定"answers"取消"按钮,可以通过键盘/选项卡访问。有没有办法移除键盘控制?我只寻找一个简单的解决方案(例如可能是现有的jQuery/JavaScript函数等?)。

这个功能是由浏览器本地提供的——当显示一个真正的系统模态时(例如使用prompt()或alert()),您无法访问事件。

正如RooVM上面的评论所说,一个可能的解决方案是使用JS和HTML实现你自己的页面模态。这样,由于它是页面的一部分,您可以任意劫持事件。

举个例子,或者一个容易实现的组件,看看Bootstrap的模态。

创建自定义模态。通过这样做,您就不必解除这些事件的绑定,因为它们一开始就不会被绑定。