调用浏览器的confirm时弹出确认框之后选择禁用,当代码再次调用confirm方法时还是会返回false,js能否知道浏览器的confirm已经被禁用。
没有想到优美的解决方案。
有个讨巧的方式:如果用户选择了禁用,那么在调用这个方法的时候,不会阻塞代码,会立刻执行下段代码。我们可以设置个计时器,时间在毫秒级结束,就说明客户端阻止了弹窗。
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
没有想到优美的解决方案。
有个讨巧的方式:如果用户选择了禁用,那么在调用这个方法的时候,不会阻塞代码,会立刻执行下段代码。我们可以设置个计时器,时间在毫秒级结束,就说明客户端阻止了弹窗。
无法知道。
建议用自己编写对话框代替。
Never Use a Warning When you Mean Undo