我试图获取聊天系统的在线/离线状态更新。目前,我一直坚持如何实时更新跨度。我把事情搞定了,但它不断增加价值(在线的人)到我的范围。我想要实现的是拥有一个静态的人员列表(那些在我的数据库中的人),如果他们在线,那么它旁边就是绿色的子弹。
这是我的jQuery脚本:
function theStatus(type, msg){
$("#status").append(
"<span class='status "+ type +"'>"+ msg +"</span>"
);
}
function getStatus(){
$.ajax({
type: "get",
url: "php/ajax/status_users.php",
async: true,
cache: false,
timeout: 1000,
success: function(data){
theStatus("rt", data);
setTimeout(
getStatus,
1000
);
}
});
};
$(document).ready(function(){
getStatus();
});
欢迎所有帮助!
答案 0 :(得分:1)
我不知道你的PHP脚本现在返回什么,但我会让它返回用户名slugs和状态的键 - 值对。
然后,您可以将用户名slug作为ID添加到每个用户范围,并根据需要定位正确的范围以更改状态,或者如果在html中找不到,则添加其他用户。
目前,只需在您的ajax函数返回结果时附加span
,而不是根据服务器返回的列表检查现有列表。