您无法直接控制它,因为它是由 Internet Explorer 用户控制的选项。
使用具有不同窗口名称的 Window.open 打开页面将在新的浏览器窗口(如弹出窗口)中打开,或者在新选项卡中打开,如果用户配置浏览器这样做的话。
编辑:
更详细的解释:
1.在现代浏览器中,window.open 将在新选项卡中打开,而不是弹出窗口。
2.您可以通过在第三个参数中指定选项来强制浏览器使用新窗口(“弹出”)
3.如果 window.open 调用不是用户发起的事件的一部分,它将在新窗口中打开。
4.“用户发起的事件”不必来自同一个函数调用——但它必须源自用户点击调用的函数
5. 如果用户发起的事件委托或延迟函数调用(在未绑定到单击事件的事件侦听器或委托中,或使用 setTimeout 例如),它会失去其状态“用户发起”
6. 一些弹出窗口拦截器将允许从用户发起的事件中打开窗口,但不允许通过其他方式打开的窗口。
7.如果任何弹出窗口被阻止,通常由阻止程序(通过用户发起的事件)允许的窗口有时也会被阻止。
一些例子……
强制在新浏览器实例中打开窗口,而不是在新标签页中打开:
window.open('page.php', '', 'width=1000');
即使它调用了另一个函数,以下内容也符合用户发起的事件:
function o(){
window.open('page.php');
}
$('button').addEvent('click', o);
由于 setTimeout 会延迟它,因此以下内容不属于用户发起的事件:
function g(){
setTimeout(o, 1);
}
function o(){
window.open('page.php');
}
$('button').addEvent('click', g);