我正在用PHP + MySQL + JavaScript制作一个小型聊天应用程序,我写了一个函数disonnectUser(),当用户按下断开连接按钮时会调用它。那就是:
function disconnectUser(){
$.post('web/WEB-INF/classes/handleChatUser.php',{ action: 'disconnect',nick: localNickname});
$('#chat').stop(true,true).fadeOut(2000,function(){
nicknameDialog();
});
$('#messageInput').val(null);
$('#clientList').html(null);
$('#chatScreen').html(null);
clearInterval(refreshIntervalId);
clearInterval(refreshIntervalId2);
connected = false;
}
它就像一个魅力,但是当我打电话在另一种情况下这个非常功能,当用户而不是按断开刚刚退出该页面,在这个函数
$(window).unload(function() {
if(connected){
disconnectUser();
connected = false;
}
});
它不起作用。而且我确定它正在被调用,因为如果我在关闭页面之前发出警报,它会正常调用。我认为这个页面在代码完全运行之前就已经关闭了,所以我认为如果我在代码运行之前放置了一些代码块,那么它会起作用吗?
你说得对,我是设置连接到两次假,感谢这个! – 2011-05-03 19:33:58