<script>
var openDialog = function(uri, name, options, closeCallback) {
var win = window.open(uri, name, options);
var interval = window.setInterval(function() {
try {
if (win == null || win.closed) {
window.clearInterval(interval);
closeCallback(win);
}
}
catch (e) {
}
}, 1000);
return win;
};
var test = function() {
alert(bye);
};
openDialog("//google.com", "popup", "scrollbars=no", test);
</script>
这是在关闭弹出窗口后显示警告的代码。它在Chrome和Firefox中运行良好,但在IE中有问题。在IE中,弹出窗口打开,在关闭之前,警报会出现。我该如何解决?我想在关闭弹出窗口后显示警告。谢谢。
答案 0 :(得分:0)
您不应该探测对象以查看它们是否每隔x秒存在一次。使用回调函数附加事件,然后您只需实例一次,当您实际需要时,而不是之前的一百万次。
尝试:
var openDialog = function(uri, name, options, closeCallback) {
var win = window.open(uri, name, options);
win.addEventListener("onunload", test);
};
var test = function() {
alert(bye);
};
这应该在窗口关闭时触发警报,享受