我有一个选择框,调用window.open(url)当一个项目被选中。默认情况下,Firefox将在新选项卡中打开页面。但是,我希望页面在一个新的窗口中打开,而不是一个新的选项卡。
我怎样才能做到呢?
我有一个选择框,调用window.open(url)当一个项目被选中。默认情况下,Firefox将在新选项卡中打开页面。但是,我希望页面在一个新的窗口中打开,而不是一个新的选项卡。
我怎样才能做到呢?
当前回答
你不需要使用height,只要确保你使用_blank,没有它,它会在一个新选项卡中打开。
对于空窗口:
window.open('', '_blank', 'toolbar=0,location=0,menubar=0');
对于特定的URL:
window.open('http://www.google.com', '_blank', 'toolbar=0,location=0,menubar=0');
其他回答
有趣的是,我发现如果您为window的第三个属性传递一个空字符串(而不是空字符串或属性列表)。打开,它将在Chrome, Firefox和IE的新选项卡中打开。如果缺席,行为就不同了。
这是我的新号召:
window.open(url, windowName, '');
你不需要这么做。允许用户拥有他们想要的任何首选项。
Firefox默认是这样做的,因为在一个新窗口中打开一个页面很烦人,如果用户不希望页面这样做,就不应该允许页面这样做。(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');
你不需要使用height,只要确保你使用_blank,没有它,它会在一个新选项卡中打开。
对于空窗口:
window.open('', '_blank', 'toolbar=0,location=0,menubar=0');
对于特定的URL:
window.open('http://www.google.com', '_blank', 'toolbar=0,location=0,menubar=0');
我可能错了,但据我所知,这是由用户的浏览器首选项控制的,我不相信这可以被重写。