打开新页面:新窗口 vs 新标签页

4

我设置了我的网络浏览器 (Firefox 10 和 Chrome 16),使其在新标签页中打开同一窗口内的新页面。当我写本地文件时,如下所示:

<html><body><input type="button" onclick="window.open();"/></body></html>

当我从Web浏览器访问该位置并单击按钮时,新页面在新标签页中的同一窗口内打开。这是预期的行为。
然而,当我使用本地Web服务器(Ruby + Webrick)并动态生成与上述相同的内容,并访问该位置localhost:3000,然后单击按钮,那么新页面在新窗口中打开。为什么它的行为不同于上面的情况,并且如何修复代码以使其在同一窗口中的新选项卡内打开?
如果我反而这样做:
<html><body><input type="button" onclick="window.open("", "_self");"/></body></html>

新页面将在同一标签页中打开,即覆盖当前页面。

不清楚您是如何生成页面的。我尝试直接从本地Web服务器(mongoose)提供页面,结果在新标签页中打开窗口时按预期工作。 - rogerz
@rogerz 我知道了。如果我注意到什么,我会更新的。感谢你到目前为止所做的努力。 - sawa
1个回答

2

通常情况下,如果你在window.open中提供了尺寸信息,你会得到一个新窗口。如果没有提供,你会得到一个新标签页。

我想指定_self也是一样的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接