我一直在尝试通过window.open
函数指定弹出窗口的宽度和高度。但是,只要在选项中加入noopener
,Chrome上的宽度和高度就会被忽略。
这是我使用的代码,在这种情况下,https://jsfiddle.net/v0otu1kq/窗口会以指定的尺寸打开。
但是,一旦我在选项中加入了noopener
,例如https://jsfiddle.net/1eqtLsnr/会忽略维度集。
document.querySelector('[data-frame]').addEventListener('click', function(e) {
e.preventDefault();
window.open(
'https://facebook.com',
'facebook-window',
'width=600,height=400,scrollbar=yes,noopener' // <-- this
);
});
答案 0 :(得分:1)
我对 window.open 函数的文档进行了更深入的研究,终于找到了一种解决方法:
let fbWindow = window.open(
'',
'facebook-window',
'width=600,height=400,scrollbar=yes'
);
fbWindow.opener = null;
fbWindow.location = 'https://facebook.com';
其工作原理如下:
PS:请注意,由于它已沙箱化,因此在JSFiddle上将不起作用。