chrome - javascript如何知道浏览器是否已经禁用confirm
世界只因有你
世界只因有你 2017-05-19 10:43:16
0
2
1026

调用浏览器的confirm时弹出确认框之后选择禁用,当代码再次调用confirm方法时还是会返回false,js能否知道浏览器的confirm已经被禁用。

世界只因有你
世界只因有你

全部回复(2)
刘奇

没有想到优美的解决方案。

有个讨巧的方式:如果用户选择了禁用,那么在调用这个方法的时候,不会阻塞代码,会立刻执行下段代码。我们可以设置个计时器,时间在毫秒级结束,就说明客户端阻止了弹窗。

var begin = Date.now();

//如果客户端没有禁用confirm,那么这个弹窗会阻塞代码继续往下执行,直到用户点了确认或取消,
// 那么end与start之间的值就会比较大了。
//反之,end与start之间的值就非常小了,毫秒级。
var result = window.confirm('hello'); 

var end = Date.now();
if (end - begin < 10) {
    console.log('用户禁用了confirm弹窗');
}
曾经蜡笔没有小新

无法知道。

建议用自己编写对话框代替。

Never Use a Warning When you Mean Undo

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板