我对 pusher.com 很陌生:我正在尝试建立一个在线频道聊天。
这是我的代码:
var PresenceChannel = pusher.subscribe('presence-test_channel');
PresenceChannel.bind('pusher:subscription_succeeded', function(members){
$("#chatMembers").empty();
members.each(function(member) {
$("#chatMembers").prepend("<li id='"+member.info.employee_id+"'>"+member.info.customer_id+"</li>");
});
});
PresenceChannel.bind('pusher:member_added',function(member){
$("#chatMembers").prepend("<li id='"+member.info.employee_id+"'>"+member.info.customer_id+"</li>");
});
PresenceChannel.bind('pusher:member_removed',function(member){
$("li#"+member.info.employee_id).remove();
});
它按预期工作。
但我有一个问题:
当我刷新打开的浏览器窗口之一时,会触发以下事件:
PresenceChannel.bind('pusher:member_added',function(member){...
紧接着,
PresenceChannel.bind('pusher:member_removed',function(member){...
被开除。因此,在刷新一个窗口后,用户从我的列表中删除,1 秒后,用户再次被添加到列表中......
1) 重新加载 1 个浏览器窗口
2)另一个窗口触发'pusher:member_removed':用户从列表中删除
3)另一个窗口触发'pusher:member_added':用户添加到列表agein
该怎么办 ?