PHP jjax与jquery slidedown

时间:2012-04-09 13:16:20

标签: php jquery mysql ajax

我有一个复杂的PHP难题。我的数据库中有一个不断更新的表(让我们称之为TABLE),其中添加了多个记录,这些结果将使用AJAX在页面(page.php)上使用PHP发布。

显示的最大帖子数量是每三秒1个,我有一个相关性算法。我不知道如何将jquery转换与表中不断更新的记录合并(由AJAX得到)。我想出的最好的并不比黑客更好,并且不会让无数的帖子。

Jquery的:

$(#5).delay(1000).slideDown(700);
$(#4).delay(4000).slideDown(700);
$(#3).delay(8000).slideDown(700);
$(#2).delay(12000).slideDown(700);
$(#1).delay(16000).slideDown(700);

PHP: 不需要

HTML:

<div id='5' class='post'></div>
<div id='4' class='post'></div>
<div id='3' class='post'></div>
<div id='2' class='post'></div>
<div id='1' class='post'></div>

我不知道如何使用AJAX。

非常感谢任何帮助,

感谢

2 个答案:

答案 0 :(得分:2)

如果您的问题只是如何滑动最新添加的div,请尝试以下方法:

HTML:

<div id="updatePanel">
    <div id='div5' class='post'></div>
    <div id='div4' class='post'></div>
    <div id='div3' class='post'></div>
    <div id='div2' class='post'></div>
    <div id='div1' class='post'></div>
</div>

注意:以数字开头的id属性无效。

的jQuery

setInterval(getData, 3000);

function getData() {
    // call ajax, get data.
    // success: function () {...
    var id = parseInt($("#updatePanel div:first").attr("id").replace("div", "")) + 1;

    $div = $("<div></div>").attr("id", id)
        .addClass("post")
        .text(dataFromAJAX)
        .css("display", "none") // change this to be a class - this is just to make it clear.
        .prependTo("#updatePanel")
        .slideDown();
}

Example fiddle

答案 1 :(得分:0)

我不确定,但这基本上是每三秒检查一次新帖子,然后通过向下滑动显示它们吗?

如果是这样,一旦你用ajax拉出新帖子,将代码附加/前置到包装容器,预设为div隐藏,然后向下滑动。

如果这是你想要的,我可以提供代码帮助,但你需要发布你的ajax,这样我才能有更好的想法。