到目前为止,我看到的每个打开新浏览器窗口的解决方案都使用target属性将其设置为“_blank”。这很令人沮丧,因为在某些浏览器中它只打开一个新选项卡并将其与http://www.facebook.com/connect/prompt_feed.php?&message=test的自动调整大小相结合,每当我尝试从我的网站更新我的状态时,它基本上会破坏我的浏览器。
当用户点击链接时,如何确保打开新窗口?
Trindaz on Fedang
答案 0 :(得分:1)
window.open(URL,name,specs,replace)
function newwindow()
{
myWindow=window.open('','','width=300,height=300');
myWindow.document.write("<p>This should open in a popup</p>");
myWindow.focus();
}
答案 1 :(得分:1)
弹出窗口是窗口,它们只是禁用了一些功能。您可以通过启用这些功能使弹出窗口像常规窗口一样。例如,如果使用
打开弹出窗口window.open('url', 'name', 'width=500, height=500, status=1, toolbar=1, location=1, menubar=1, resizable=1');
窗口将有一个工具栏,一个URL栏,一个状态栏,菜单,并且它可以调整大小。它与任何其他窗口一样。
但请记住,许多浏览器在某些情况下会阻止window.open(),如果您指定了很多功能,其中一些浏览器会打开新选项卡。有些人也很奇怪;例如,Chrome默认情况下会在弹出窗口中使用滚动条,但如果您明确告诉它在弹出窗口中使用滚动条(使用scrollbars = 1),它将在选项卡中打开。
所以基本上没有办法确定你的页面总会在新窗口中打开,因为浏览器都会以不同方式处理这些内容,用户也可以更改设置。如果您必须有一个新窗口,上面的代码可能是您最好的选择,但您可能希望查看其他选项。
答案 2 :(得分:0)
有一个合理的理由使用Target = _blank,每个人都完全忽略了,这就是当一个网站被写成带有章节/页面的BOOK时,目录必须保持完整而不使用BACK按钮重新加载上一页(目录)。这样冲浪者需要做的就是在完成阅读时关闭目标页面,然后他们将返回目录。 幸运的是HTML5已经恢复了Target =“_ blank”代码,但不幸的是,必须取消选中“Block Popups”才能使其正常工作。