如何从Reddit API加载更多页面?

时间:2013-11-30 02:38:53

标签: jquery json api reddit

我有一个简单的问题。我对整个API领域都很陌生,目前我正在使用Reddit API。我想要做的是基本上加载的不仅仅是我从中提取JSON的subreddit的一页。如果这是一个重复的问题,我会提前道歉。

这是我到目前为止所做的:

$.getJSON("http://www.reddit.com/r/pics/.json?jsonp=?", function(data) {
    $.each(data.data.children, function(i,item){
        $("<img/>").attr("src", item.data.url).appendTo("#images");
    });
});

你可以在这里看到一个真实的JsFiddle:Reddit JSON

我的问题是:

如何从其他网页加载更多内容? [我相信它只显示第1页] 这里的任何人都可以给我一个链接或JsFiddle来说明如何做到这一点吗?

此外,如果这里的任何人都感到慷慨,我的愿望是随着此人不断向下滚动来获取更多信息。

谢谢。

1 个答案:

答案 0 :(得分:1)

您可以使用after参数,例如

var lastId;

function load(params) {
    params = params || {};
    $.getJSON("http://www.reddit.com/r/pics/.json?jsonp=?", params, function (data) {
        var children = data.data.children;
        $.each(children, function (i, item) {
            $("<img/>").attr("src", item.data.url).appendTo("#images");
        });
        if (children && children.length > 0) {
            lastId = children[children.length - 1].data.id;
        } else {
            lastId = undefined;
        }
    });
}

load();

$('.after').click(function () {
    if (lastId) {
        load({
            after: 't3_' + lastId
        });
    }
})

演示:Fiddle

请参阅this answer