是window.open(“”,...用firefox不可能?

时间:2009-11-19 09:31:59

标签: javascript firefox

在firefox中,我用file:// protocol打开了一个本地存储的文件 (文件:/// C:/temp/foo.html)

foo.html包含Java Script,其中(以及其他)应该是一个新的 窗口没有网址:

var new_window = window.open("","", "height=100,left=50,width=200");

当达到此行时,Firefox会显示“Firefox阻止此站点打开弹出窗口”。我不明白为什么Firefox会发出这个警告,显然,文件(foo.html)在我的控制之下(因为它存储在本地,我用file://协议打开它,并且此外,要打开的窗口不指向任何可能包含任何敏感数据的文件,因为open方法中的url参数设置为“”。

但除此之外,似乎我甚至不能强制或允许firefox打开窗口。黄色的“Firefox prev ....”栏上有这个“选项”按钮,据说应该允许创建例外,但我不能。

所以,这个问题基本归结为:我如何允许本地html文件在Firefox中用Javascript打开一个空窗口。

谢谢/ Rene

2 个答案:

答案 0 :(得分:2)

这是Firefox安全预防措施,请参阅此链接:

http://kb.mozillazine.org/Links_to_local_pages_don't_work

但是,看起来这个扩展名允许你覆盖它:

https://addons.mozilla.org/en-US/firefox/addon/281

答案 1 :(得分:1)

这是弹出窗口阻止程序,它阻止弹出窗口不会被明确的用户操作(如点击)打开。 你不能强迫它打开弹出窗口,你需要允许Firefox打开它。 我建议你测试new_window变量以查看它是否为空。在这种情况下,向用户显示一条消息,以便他允许域打开弹出窗口。