<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中,弹出窗口打开,在关闭它之前,会弹出警报。我怎么才能修复它?我想在关闭弹出窗口后显示警报。谢谢。
发布于 2014-08-15 19:23:10
您不应该每隔x秒探测一次对象以查看它们是否存在。使用回调函数附加事件,然后在实际需要时只触发一次事件,而不是之前的一百万次。
尝试:
var openDialog = function(uri, name, options, closeCallback) {
var win = window.open(uri, name, options);
win.addEventListener("onunload", test);
};
var test = function() {
alert(bye);
};这将在窗口关闭时触发您的警报,请尽情享受
https://stackoverflow.com/questions/25325380
复制相似问题