window.close和chrome的问题

mrp*_*atg 39 javascript google-chrome chrome-ios

我试图用javascript关闭一个子窗口,在Firefox中一切正常,但在chrome中窗口不关闭

这是我正在使用的

$(document).ready(function() {
    if (window.opener && !window.opener.closed)
        window.opener.location = "http://www.website.com"
    window.close();
});
Run Code Online (Sandbox Code Playgroud)

我尝试了谷歌的建议,但无济于事.

任何有类似问题或知道解决方法的人?

War*_*tto 86

我知道这个问题很老,但我遇到了同样的问题.这对我有用:

window.open('', '_self', ''); //bug fix
window.close();
Run Code Online (Sandbox Code Playgroud)

  • 这个解决方案有多么面向未来?有谁知道为什么这有效?我认为一般规则是你无法关闭一个没有用JavaScript打开的窗口. (6认同)

小智 10

如果以前你通过window.open()打开一些其他窗口

这不起作用:

window.open(...)
window.open('', '_self', '');
window.close();
Run Code Online (Sandbox Code Playgroud)

但工作:

window.open(...);
setTimeout(function(){
    window.open('', '_self', '');
    window.close();
}, 100);
Run Code Online (Sandbox Code Playgroud)