2

我正在使用 CodeIgniter。在我的控制器中,我正在解码 JSON 响应并在加载视图时简单地显示值。我只是从 JSON 数组中显示我的所有内容(不使用数据库)。它完全是一个数组,我从中渲染数据。我想在滚动时自动加载内容。

例子:

 $resultjson = $this->curl->simple_get("http://www.test.com/api/records.php?ak=XXXXXXXX&ts=XXXXXXXX&sig=XXXXXXXX&postano=XXXXXX&count=100");

自动加载时如何获取 10 条记录?就像http://pinterest.com/机制一样。我怎样才能做到这一点?

有插件吗?CodeIgniter 是否已经有解决方案,以便我可以使用类或库?

4

2 回答 2

1

您可以使用jQuery 滚动事件scrollTop()和 $.ajax();

基本上捕捉滚动事件,看看是否$(window).scrollTop()高于<div id="auto_load"></div>(通过.offset()),如果是这样的话,运行一次ajax。

div#auto_load将放置在加载内容的下方,一旦添加内容就会“跳”下来。

例子:

var ajax_once = false;
$(window).bind('scroll', function() {
    if (ajax_once)
        return;

    if ($(this).scrollTop() >= $('div#auto_load').offset().top) {
        ajax_once = true;
        $.ajax({
            /* Url, dataType json etc. */
        }).done(function(data) {
            /* use the data */
            ajax_once = false;
        });
    }
});
于 2012-12-10T13:07:37.433 回答
-1

Codeigniter 是一个 php 框架,这意味着服务器端因此没有内置客户端逻辑。

您可以使用 jQuery 插件来实现无限滚动。这是它的链接:http: //www.infinite-scroll.com/

于 2012-12-10T13:03:52.467 回答