2009-11-24 88 views
5

我想从我的默认页面打开某个页面。 所有有默认页面的代码是:window.open与弹出窗口拦截器

<script type="text/javascript"> 
     window.open("StartPage.aspx", "", "fullscreen=yes"); 
</script> 

的问题是,浏览器的弹出式窗口拦截阻止此,我需要让浏览器打开它。 我想避免这种情况,并且每个使用我的Web应用程序的人都不需要允许弹出窗口阻止程序打开页面。我想通过弹出式窗口拦截器并在未经许可的情况下打开页面。

有没有办法做到这一点? 谢谢

+3

如果你能绕过弹出窗口拦截器的方式,你不认为所有的广告垃圾邮件都会这样做? – skaffman 2009-11-24 13:52:28

+1

如果您可以绕过弹出式窗口拦截器,它不会是弹出式窗口拦截器。 – NickFitz 2009-11-24 15:17:39

回答

1

你将无法做到这一点。它是阻止弹出窗口的用户首选项,您无法控制该窗口。

13

adamantium是对的。如果弹出窗口阻止程序可能被导致弹出窗口的代码覆盖,那么它将毫无用处。你可以做的最好的是这样的:

<script type="text/javascript"> 
    var myPopup = window.open("StartPage.aspx", "", "fullscreen=yes"); 
    if(!myPopup) 
     alert('a popup was blocked. please make an exception for this site in your popup blocker and try again'); 
</script> 
+0

是好轨道,但如何覆盖没有警报消息 – 2013-05-10 12:21:55

+0

不适用于我的Chromium。任何想法? – lippo 2013-06-03 08:33:27

3

正如其他人所说的,你根本不能。浏览器正在阻止该行为。另一个选择是不使用window.open,而是使用可以给你相同行为的javascript组件。

+0

看来他不想要一个“弹出”,而是全屏打开页面。 – awe 2009-11-24 13:54:43

+0

正确,但这是不可能的,所以我给出了一个替代解决方案。 – Bob 2009-11-24 14:02:15

1

只能使用onclick事件打开弹出窗口。您可以尝试使用target="_blank"提交表单并为您的网址设置操作,但forefox阻止了此操作,而谷歌浏览器没有。

+0

Piotr M.是对的!这是唯一可行的事情!难怪我整个时间都在阻止我的弹出窗口,我通过onmousedown事件触发了他们,谁知道它的行为会有所不同!谢谢Piotr! – Hank 2013-01-28 21:09:07

0

我不认为这是不可能的,我每天都看到流页面打开弹出窗口所有的时间和矿山被封锁,所以应该是绕过它

相关问题