我正在使用window.open()函数打开一个javascript弹出窗口,并在其上有关闭按钮。我想在IE,Firefox和Chrome中检测该窗口的关闭事件,因为我想清除会话变量并重定向到其他一些页面。我尝试使用window.onbeforeunload事件,但它在每次回发时都在执行。任何建议将不胜感激。
答案 0 :(得分:2)
您的问题有一个非常简单的解决方案。
首先制作一个新对象,打开一个像这样的流行音乐:
var winObj = window.open('http://www.google.com','google','width=800,height=600,status=0,toolbar=0');
为了知道这个弹出窗口何时关闭,你只需要用以下循环来检查它:
var loop = setInterval(function() {
if(winObj.closed) {
clearInterval(loop);
alert('closed');
}
}, 1000);
现在,您可以使用任何所需的JavaScript代码替换警报。
玩得开心! :)
答案 1 :(得分:1)
你需要一个事件处理程序,只有这两个人可以使用。所以正如你所说,你将有历史记录回来并刷新触发你的活动。
请查看this帖子
另一种解决方案是将弹出窗口大小设置为全屏并自行设置关闭按钮。对不起,javascript这里的解决方案用完了: - /
答案 2 :(得分:-1)
$(window).bind('unload', function(){
// ...
});