我正在使用网络套接字来更新评论列表。我正在嵌套 ul 和 li 标签以生成线程样式(在此处解释)。
问题是当有新消息进来时,我不想重新渲染整个消息列表。有没有办法操纵 DOM(最好使用 jQuery),将新消息插入到列表的正确“巢”中?
或者有没有更好的方法来构建我的 HTML?(也许是一种使用父子ID作为html属性的方式)
答案是yes
——但您需要某种方式来表明,对于每条进来的消息,新消息正在回复哪个评论。然后,您需要做的就是选择旧的“父”注释并使用 jQuery 的.append()
or.appendChild()
函数。我建议使用评论 ID 系统,以便您可以直接按 ID 选择评论。
// new comment comes in, is replying to comment number 12345678.
// Then...
$('#12345678').appendChild(new_comment_html);