附加数组数据的正确方法jQuery



我正在用javascript数据库构建一个聊天应用程序
它是实时的,在本地工作非常完美。

在我将其部署到联机后,追加时间会延迟几毫秒
,其情况如下图所示。

我认为这是因为我在添加新添加的数据之前清除了">ul"。


以下是代码

$("#chatbox ul").html("");
$.each(messageArr, function(i,message){
if(!message){
return;
}
var myMsg = "<li class=me id="+message._id+"><p class=what>"+message.what+"</p><p>"+moment(message.when).fromNow()+"  by <strong>"+message.who+"</strong></p></li>";    
var someoneMsg = "<li class=someone id="+message._id+"><p class=what>"+message.what+"</p><p>"+moment(message.when).fromNow()+"  by <strong>"+message.who+"</strong></p></li>";  
if(isMe){
$("#chatbox ul").append(myMsg);
}else{
$("#chatbox ul").append(someoneMsg);
}
})         

有没有合适的方法可以在不闪烁的情况下循环和附加数组数据?

$("#btn1").click(function(){
$("p").append(" <b>Appended text</b>.");
});
$("#btn2").click(function(){
$("ol").append("<li>Appended item</li>");
});

最新更新