我正在开发一个利用JavaScript alert()
和confirm()
对话框的web应用程序。
如何阻止Chrome显示此复选框?
有没有我可以修改的设置?
我知道我可以修改源代码,但我想让Chrome仍然可以自动更新。
我不需要担心其他浏览器,因为这个应用程序只能在Chrome上运行。
我对运行该应用程序的(Windows)计算机具有管理员访问权限。
发布于 2013-02-07 12:28:41
function alertWithoutNotice(message){
setTimeout(function(){
alert(message);
}, 1000);
}
发布于 2012-07-30 21:25:49
你不能。这是一个浏览器功能,可以防止网站显示数百条警告,阻止你离开。
但是,您可以查看像jQuery UI Dialog这样的模式弹出窗口。这些是显示自定义对话框的javascript警告框。它们不使用默认的alert()
函数,因此,完全绕过了您遇到的问题。
我发现一个有很多消息框和确认的应用程序,如果你使用自定义对话框而不是默认的警告和确认,会有更好的用户体验。
发布于 2014-05-16 14:12:21
这就是我最终要做的,因为我们有一个web应用程序,有多个用户不在我们的控制之下……(@DannyBeckett我知道这不是你问题的确切答案,但关注你问题的人可能会因此而有所帮助。)如果他们没有看到对话框,你至少可以检测出来。您最可能想要更改的内容很少,比如显示时间或实际显示的内容。请记住,这只会通知用户他们已经成功地单击了那个小复选框。
window.nativeAlert = window.alert;
window.alert = function (message) {
var timeBefore = new Date();
var confirmBool = nativeAlert(message);
var timeAfter = new Date();
if ((timeAfter - timeBefore) < 350) {
MySpecialDialog("You have alerts turned off");
}
}
window.nativeConfirm = window.confirm;
window.confirm = function (message) {
var timeBefore = new Date();
var confirmBool = nativeConfirm(message);
var timeAfter = new Date();
if ((timeAfter - timeBefore) < 350) {
MySpecialDialog("You have confirms turned off");
}
return confirmBool;
}
显然,我已经将时间设置为3.5毫秒。但经过一些测试,我们只能在大约5毫秒以上的时间内单击或关闭对话框。
https://stackoverflow.com/questions/11729835
复制