[英]Upon Closing pop-up no event occurs
我从HTML页面打开了一个弹出窗口,该弹出窗口与聊天服务器连接,发送了一条可用消息,并且当该弹出窗口关闭时,它应该发送一条不可用消息,
问题是,当我关闭(浏览器按钮)弹出窗口时,不可用消息未发送,
我试过了, $(window).bind("beforeunload",function(event) { var pres = $pres({from: connection.jid, to: recipient}).c("show").t("unavailable"); connection.send(pres); connection.disconnect(); });
也尝试过
var timer = setInterval(function() {
clearInterval(timer);
if(window.closed) {
var pres = $pres({from: connection.jid, to: recipient}).c("show").t("unavailable");
connection.send(pres);
connection.disconnect();
}
}, 500);
但是我有一个自己的关闭按钮,并且有一个功能可以正常工作,
var onCloseChatWindow = function(){
var pres = $pres({from: connection.jid, to: recipient}).c("show").t("unavailable");
connection.send(pres);
connection.disconnect();
window.close();
}
您需要回发
回发是重新加载页面的过程,因此,如果您希望页面在回发后关闭,则需要设置window.close()javascript以在该回发期间与浏览器的onload事件一起运行,
通常使用ClientScript.RegisterStartupScript()
函数完成。
要么
您可以使用window.opener 参见参考
<body onclose="window.opener.somefunction('value');window.close();">
</body>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.