1

我正在向另一个我不控制内容的站点打开一个子窗口。我已经实现了我在这里找到的模式,即使用设置的超时来检查 window.closed 属性。

我发现这个已确认的边缘错误报告。边缘问题报告

这是现在的代码。

var myWindow = window.open(
      url,
      'myWindow',
      'height=700,width=800,left=10,top=10,resizable=yes,scrollbars=yes,toolbar=no,menubar=no,location=no,directories=no,status=yes');  

// Check for the myWindow to close. When closed attempt to validate.
var timer = setInterval(checkWindow, 1000);

function checkWindow() {
debugger;
    // Try Block to catch our popup window being blocked
    try {           
        if(myWindow.closed) {
            clearInterval(timer);
            //do stuff here
        }
    }
    catch(e) {

        clearInterval(timer);
        //handle blocked popups and other stuff         
    }
}

当它到达调试器步骤并且我检查 myWindow.close 时,它​​总是正确的。在 chrome 中,在我真正关闭子窗口之前它是错误的。人们正在使用解决方法或不同的模式吗?

4

0 回答 0