JS:当子窗口closures时收听

我正在打开这个分享facebook的子窗口:

window.open(sharingUrl,'','toolbar=0,status=0,width=626,height=436'); 

当用户点击共享或closures时,窗口会自动closures…有没有办法给这些事件添加一个监听器?

如果您在调用window.open()时存储对子窗口的引用,则可以使用setInterval()进行轮询,以查看该窗口是否仍然使用window.closed属性打开。 下面的示例每秒钟检查两次。

 var child = window.open('http://google.com','','toolbar=0,status=0,width=626,height=436'); var timer = setInterval(checkChild, 500); function checkChild() { if (child.closed) { alert("Child window closed"); clearInterval(timer); } } 

给其他人的提示:如果你曾经有过控制子窗口中的html的情况,你可以使用onbeforeunload事件并提醒父窗口。

为了将来的参考,我想分享另一个不需要setInterval解决scheme:

 var child = window.open('http://google.com','','toolbar=0,status=0,width=626,height=436'); child.onunload = function(){ console.log('Child window closed'); }; 

这将工作正常

  <html> <head> <title>Detecting browser close in IE</title> <script type="text/javascript"> window.onbeforeunload = function(){ myUnloadEvent(); } function myUnloadEvent() { alert ('You can have Ur Logic Here ,'); } </script> </head> </script> </head> <body > <h1>Close the Window now</h1> </body> </html>