繁体   English   中英

关闭弹出窗口时,没有事件发生

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM