我有一个选择框,调用window.open(url)当一个项目被选中。默认情况下,Firefox将在新选项卡中打开页面。但是,我希望页面在一个新的窗口中打开,而不是一个新的选项卡。

我怎样才能做到呢?


当前回答

我可能错了,但据我所知,这是由用户的浏览器首选项控制的,我不相信这可以被重写。

其他回答

你不需要这么做。允许用户拥有他们想要的任何首选项。

Firefox默认是这样做的,因为在一个新窗口中打开一个页面很烦人,如果用户不希望页面这样做,就不应该允许页面这样做。(Firefox允许你在新窗口中打开标签,如果你这样设置的话)。

关键是参数:

如果你提供参数[Height="", Width=""],那么它将在新窗口中打开。

如果你不提供参数,那么它将在新选项卡中打开。

在Chrome和Firefox中测试

我可能错了,但据我所知,这是由用户的浏览器首选项控制的,我不相信这可以被重写。

为打开调用指定窗口“features”:

window.open(url, windowName, "height=200,width=200");

当您指定宽度/高度时,它将在一个新窗口中打开,而不是一个选项卡。

请参阅https://developer.mozilla.org/en-US/docs/Web/API/Window.open#Position_and_size_features了解所有可能的功能。

你不需要使用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');