谷歌浏览器不显示一个站点的alert()弹出窗口

Google chrome not displaying alert() popups for one site

本文关键字:alert 窗口 站点 一个 谷歌浏览器 显示      更新时间:2023-09-26

我正在研究一个javascript循环,随着循环的进行,它会提醒每个键值。

为了加快速度,我选中了"阻止此页面创建其他对话框"框。 通常,这只会抑制一个例程的弹出窗口,但它们没有回来。

在谷歌浏览器中,alert()消息不再从该网站弹出。其他网站有,但不是那个网站。

以前有人听说过这个吗?

问:如何重置该站点的 alert() 消息?

您无需重新启动浏览器。只需关闭选项卡并再次重新打开即可。它不需要隐身。

未测试,但如果您再次遇到问题,我认为在隐身窗口中打开站点将重置对话框。

编辑:我添加了这个答案,它适用于Chrome版本。更新可能使这变得不必要(感谢不要被标记!

重新启动浏览器,这应该会重置该选项并显示新的对话框。

来自 OP:

解决方案是重新启动浏览器。丢失了我所有的标签?不!!!

但是,有一种方法可以重新启动浏览器而不会丢失所有选项卡。

安装会话管理器加载项。Chrome和Firefox都有一个会话管理器版本。

会话

管理器维护打开的选项卡的运行列表,并在意外重新启动或系统崩溃后自动询问您是否要重新打开它们("恢复会话")。

此外,会话管理器将允许您按需保存选项卡,并在以后或重新启动后重新加载它们。您可以随时保存"会话"(所有打开的选项卡),并为会话指定您想要的任何名称。

最后,在重新加载上一个会话时,您还可以选择要重新打开的选项卡以及要忽略的选项卡。

没有它就无法生存,无论是在Chrome还是Firefox中。

铬扩展程序

火狐扩展

如果你使用的是IE。 .好吧,你还有其他问题。

如果要检测这些是否被阻止。 您将不得不对将要分发的消息执行自己的操作,但要覆盖本机警报/确认。

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, turn them back on or die!!!");
  }
}
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 alerts turned off, turn them back on or die!!!");
}
 return confirmBool;
}

显然,我将时间设置为 3.5 毫秒。 但是经过一些测试,我们只能在大约 5 毫秒内单击或关闭对话框,再加上

把这一行放在正文的末尾,可能是 DOM 在编译器读取这一行时还没有准备好

<script type="text/javascript" src="script.js"></script>"

您所要做的就是重新启动浏览器。在另一个浏览器上尝试一下,看看它是否有效,如果它确实有效(即,你能够看到你的弹出窗口吗?),那么你应该能够重新启动浏览器来修复它。

这发生在我在谷歌浏览器上,我通过退出并重新=打开我的浏览器来修复它。

> Roberto 关于在正文结束之前放置脚本命令的答案对我有用。我花了几个小时试图弄清楚为什么我的控制台命令不起作用。