如何发出警告说“请关闭弹出窗口拦截器”

时间:2010-04-26 06:27:35

标签: javascript

  

可能重复:
  How can I detect if a browser is blocking a popup?

我试图用禁用的工具栏打开一个子窗口.......

如何检查子窗口是否打开然后显示此警告??

有人可以帮助代码.........

3 个答案:

答案 0 :(得分:4)

使用window.open()创建新窗口时,它会返回(理论上)打开的窗口的句柄。然后,您可以测试该句柄以确定窗口是否已打开:

var child = window.open("mypopup.html");

// some popup blockers prevent the window from being created (!child) and
// others just close them before they're displayed (child.closed)

if (!child || child.closed) {
    // tell the user to turn off their popup blocker
}

然而,弹出窗口非常具有侵入性,您应该考虑尝试在页面中显示“弹出”信息。特别要看一下“对话框”脚本。如果你正在使用jQuery,Dialog widget库中会包含一个非常好的jQuery UI

答案 1 :(得分:1)

我认为,如果弹出窗口被阻止,window.open()将返回null,而不是窗口对象。您可以在MSDN article

中阅读
  

如果你不确定是否有弹出窗口   窗口被阻止,检查你的   返回窗口对象的函数。   您可以判断弹出窗口是否有   如果这些函数返回,则被阻止   空值。特别是,你需要检查   window.open的值要避免   弹出窗口时出现脚本错误   被阻止了。

此外,这将为您提供有关检测弹出窗口阻止程序的一些提示:http://www.visitor-stats.com/articles/detect-popup-blocker.php

答案 2 :(得分:-1)

您需要向我们提供您正在使用的Javascript,以便我们提供帮助。您将需要一个“if”声明。

在javascript中显示如下警告:

警告('请关闭弹出窗口拦截器');