use*_*313 6 jquery xmpp strophe
我使用strophe.js和jQuery编写了一个基于Web的MUC客户端,我正在尝试向该房间发送不可用的状态,并在窗口的jquery unload事件中断开用户连接.如果用户导航或关闭浏览器选项卡,则应将其注销到MUC.
我已经通过页面上的注销按钮测试了我在此事件中运行的代码,所以我很确定该节是正确的.如果浏览器窗口关闭,我认为strophe在发送节时遇到问题.这里有解决方法吗?我也尝试了onbeforeunload事件(我知道它不完全兼容跨浏览器),但这似乎也不起作用.
任何建议都非常感谢!
谢谢,约翰
W. *_*III 10
确保切换到同步模式,然后flush()在发送呼叫前disconnect()拨打电话.这是一个例子:
var Client = {
connect: function(spec) {
this.connection = new Strophe.Connection(spec.url);
},
disconnect: function() {
this.connection.options.sync = true; // Switch to using synchronous requests since this is typically called onUnload.
this.connection.flush();
this.connection.disconnect();
}
}
Run Code Online (Sandbox Code Playgroud)
然后你可以绑定到onbeforeunload/onunload.(jQuery示例)
var client = new Client;
client.connect();
$(window).unload(function() {
client.disconnect();
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5069 次 |
| 最近记录: |