我有一个选择框,调用window.open(url)当一个项目被选中。默认情况下,Firefox将在新选项卡中打开页面。但是,我希望页面在一个新的窗口中打开,而不是一个新的选项卡。
我怎样才能做到呢?
我有一个选择框,调用window.open(url)当一个项目被选中。默认情况下,Firefox将在新选项卡中打开页面。但是,我希望页面在一个新的窗口中打开,而不是一个新的选项卡。
我怎样才能做到呢?
当前回答
对我来说,解决办法就是
"location=0"
在第三个参数中。在最新的FF/Chrome和旧版本的IE11上测试
我使用的完整方法调用如下(因为我喜欢使用可变宽度):
window.open(url, "window" + id, 'toolbar=0,location=0,scrollbars=1,statusbar=1,menubar=0,resizable=1,width=' + width + ',height=800,left=100,top=50');
其他回答
Try:
window.open("", [window name], "height=XXX,width=XXX,modal=yes,alwaysRaised=yes");
我有一些代码,做什么你说,但有很多参数。我认为这些是最低限度的,如果它不起作用,请告诉我,我会张贴剩下的。
我刚刚尝试了IE(11)和Chrome(54.0.2794.1金丝雀SyzyASan):
window.open(url, "_blank", "x=y")
... 它打开了一个新的窗口。
这意味着Clint pachl说的是对的,他说提供任何一个参数都会导致新窗口打开。
——显然,它不必是一个合法的参数!
(YMMV -如我所说,我只在两个地方测试了它…下一次升级可能会使结果无效,无论如何)
我刚刚注意到,在IE中,窗口没有任何装饰。
对我来说,解决办法就是
"location=0"
在第三个参数中。在最新的FF/Chrome和旧版本的IE11上测试
我使用的完整方法调用如下(因为我喜欢使用可变宽度):
window.open(url, "window" + id, 'toolbar=0,location=0,scrollbars=1,statusbar=1,menubar=0,resizable=1,width=' + width + ',height=800,left=100,top=50');
关键是参数:
如果你提供参数[Height="", Width=""],那么它将在新窗口中打开。
如果你不提供参数,那么它将在新选项卡中打开。
在Chrome和Firefox中测试
你可以试试下面的函数:
<script type="text/javascript">
function open(url)
{
var popup = window.open(url, "_blank", "width=200, height=200") ;
popup.location = URL;
}
</script>
执行的HTML代码:
<a href="#" onclick="open('http://www.google.com')">google search</a>