我正在打开另一个网站的子窗口,我无法控制其中的内容。我已经实现了我在这里找到的模式,即使用设置的超时来检查 window.close 属性。
我发现了这个已确认的 Edge 错误报告。 Edge Issue Report
这是现在的代码。
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 中,在我实际关闭子窗口之前,它是错误的。是否有解决方法或人们正在使用不同的模式?
最佳答案
考虑到 window.closed如果新打开的 URL 与打开时的来源/域不同,则始终返回 true:
关于javascript - window.close 始终为 true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50143828/