跨域无法访问 window.opener

无法监听目标窗口的关闭事件,不过可以轮询

1
2
3
4
5
6
7
var win = window.open("http://www.google.com");
var timer = setInterval(function() {
if (win.closed) {
clearInterval(timer);
alert("closed");
}
}, 1000);

使用 postMessage 在 iframe、window 窗口之间通信

子窗口内无页面跳转的情况下,document.referer 可以获取父窗口的 url。不然获取到的就是子窗口跳转前的页面的 url。