javascript - 为什么 Firefox 允许禁用确认框?

标签 javascript firefox confirm

运行此示例 http://jsfiddle.net/yxzqY/在我的 Mac 上的 Firefox 上,大约一半的确认提示会显示“阻止此窗口创建更多对话框”复选框。我理解允许用户禁用警报,但确认框是控制流的一部分 - 单击“确定”或“取消”指示下一个事件序列 - 禁用它们会破坏应用程序。

我看到很多应用程序依赖于确认提示,但从未见过 Firefox 或任何其他浏览器这样做(目击者试图删除 StackOverflow 上的问题) - 那么为什么会出现在这里呢?为什么这种情况只是偶尔发生?我们怎样才能防止这种情况发生呢?

最佳答案

据我所知,“阻止进一步的对话框”复选框的标准是在短时间内(在当前版本中可能是五秒左右)向用户连续显示多个对话框Firefox 中的一秒;Chrome 中一两秒)。

在这种情况下添加它的原因是为了防止恶意页面用无休止的对话框序列束缚用户:

while(1) {
    alert("Is this annoying yet?");
}

如果您预计您的应用程序将使用大量这样的确认对话框,我建议您使用 DOM 对话框(例如 http://jqueryui.com/demos/dialog/ )而不是 native alert()确认()

关于javascript - 为什么 Firefox 允许禁用确认框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10725865/

相关文章:

javascript - 返回 javascript 对象警报 "undefined"

javascript - 由于 JQuery 运算符,Karma/Jasmine 测试失败

javascript - JQuery 代码可以在 chrome 和 IE 中运行,但不能在 firefox 中运行

javascript - 弄乱 Firefox Javascript 解释器有多容易?

javascript - while(true) 循环中的 promise /等待 promise 解决

javascript - 更改鼠标键码 - jquery

PHP 突然 super 慢

sql - 是否有用于存储过程执行的 "are you sure"? :)

jsf-2 - 在 <p :rowEditor> updates the model on click of "OK" button 之前显示确认消息

JavaScript 单选按钮确认