如何完成滚动聊天室?

时间:2012-01-13 05:08:08

标签: php javascript mysql ajax chatroom

我正在为我的网站编写一个聊天室,而且我遇到了很长一段时间。希望你们都能帮助我=)

无论如何,我想知道是否有办法操纵MySQL或PHP以使它们向后返回信息。我尝试过使用ORDER BY ASC和DESC ......但没有成功。我的聊天室自动滚动到底部,我希望聊天的最新回复显示在框中的最后一个,然后让早期的回复向上追踪。有点像Facebook聊天。关于如何实现这一目标的任何想法? :/

谢谢!

2 个答案:

答案 0 :(得分:1)

在输出之前的php中,只需在消息列表上执行array_reverse

这里有文档http://php.net/manual/en/function.array-reverse.php

答案 1 :(得分:0)

你可以安装一个像this这样的jQuery插件,然后使用类似的东西:

$('.message').sortElements(function(a, b){
    return $(a).attr('title') > $(b).attr('title') ? 1 : -1;
});

这假设您将每个消息元素的title设置为发送该消息的时间戳。虽然我只是在每个消息标记中附加一个非标准属性,即timtestamp,但您可以使用:

$('.message').sortElements(function(a, b){
    return $(a).attr('timestamp') > $(b).attr('timestamp') ? 1 : -1;
});