我创建了一个像这样的窗口:
var myWindow = window.open(...)
我想知道这个窗口何时在主代码中关闭。myWindow
也许我可以用变量做一些事情。我尝试过使用 unonload 功能,例如:
myWindow.onunload = function () {...}
但这根本没有被调用。
有什么建议么?
我创建了一个像这样的窗口:
var myWindow = window.open(...)
我想知道这个窗口何时在主代码中关闭。myWindow
也许我可以用变量做一些事情。我尝试过使用 unonload 功能,例如:
myWindow.onunload = function () {...}
但这根本没有被调用。
有什么建议么?
当孩子关闭时,您可以让孩子调用父窗口上的函数,而不是从父窗口添加事件处理程序:
父窗口
// needs to be somewhere global so the child window can call it
var onChildWindowClose = function () {
// ...
};
子窗口
window.onunload = function () {
if (opener && !opener.closed) {
opener.onChildWindowClose();
}
};
不是真正的事件处理,但您可以尝试使用以下命令监控您的窗口closed
属性setInterval
:
myWindow=window.open("","","width=200,height=300");
var timer = setInterval(
function(){
if(myWindow.closed){
clearInterval(timer);
alert('closed');
}
}, 1000);