1

当我尝试使用window.open打开一个窗口或者如果我为target标记设置target =“_ blank”时,Google工具栏在IE 6中为我创建了一个严重问题。它将窗口视为弹出窗口,并且显示弹出窗口被阻止,我真的不想将其显示给我的用户。只有在window.open之前有一个额外的代码被执行时,才会出现这个问题。在onclick调用另一个方法,然后使用window.open。有人可以告诉我如何解决这个问题?Google工具栏阻止打开一个新窗口

+0

因此,用户安装一个工具来阻止网站打开新的窗口...并且你想让作者绕过它的方式吗?这不会使工具毫无意义吗? – Quentin 2010-02-08 12:39:00

+0

什么是网址示例?通常情况下,Google只会在更改区域时阻止'target =“_ blank”',您是在本地机器上测试而不是完全合格的url? – 2010-02-08 12:39:45

回答

0

将该网站添加到您的可信站点将会起作用。

设置target =“_ blank”不应触发弹出式窗口拦截器。

+1

嗯不,我不能要求每个用户将我的网站添加到受信任的站点。设置target =“_ blank”确实会触发Google工具栏弹出窗口阻止程序。 – Punit 2010-02-08 12:33:08

+0

该网址是完全合格的网址,将用户带到不同的区域,我甚至试图打开“http://www.google.co.in”,这也表示它被阻止。 – Punit 2010-02-08 13:02:15

+0

我在哪里工作,我们使用组策略将这种事情推送给所有用户。 – 2010-02-09 11:55:40

1

这样的工具栏和其他设备旨在保护用户免受不需要的弹出窗口的侵害。他们确定窗口是否“需要”的唯一方法是确定是否在用户启动的事件的事件处理程序中调用window.open,如按钮单击。因此,如果您尝试在文档加载或AJAX成功处理程序中执行诸如调用window.open之类的操作,则工具栏(和其他拦截器)将假定该弹出框是可疑的。

除了如Buchan先生所指出的那样,您可以对此做任何事情,告诉您的用户会发生什么。只要有可能,你的弹出窗口直接从点击处理程序启动。

更彻底的改变将是从window.open移开,并使用由浮动元素组成的模拟弹出窗口来覆盖页面的一部分。有些东西,就像jQuery UI对话框给你的东西一样。