我试图用禁用的工具栏打开一个子窗口.......
如何检查子窗口是否打开然后显示此警告??
有人可以帮助代码.........
答案 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中显示如下警告:
警告('请关闭弹出窗口拦截器');