0

我有这项工作很棒。

(function() {

    // What JSON do you want to get? Note: If you're making a request from your own domain to your own domain, delete &callback=?.
    var url = 'http://myurl/guest-posts/?category=ffm&format=json&callback=?';

    $.getJSON(url).done(function(data) { // Adds the JSON to the data variable.

        // Create the HTML string.
        var headerContent = '<h1><a href="' + data.website.authenticUrl + '">' + data.website.siteTitle + '</a></h1>';

        // Set the HTML.
        $('#header').html(headerContent);

        $(data.items).each(function() {
            var post =  '<a href="http://myurl/' + this.fullUrl + '"><h2>' + this.title + '</h2></a><img src= "'+this.assetUrl+'" alt ="'+this.filename+'"><a href="http://myurl/' + this.fullUrl + '">Read More</a>' ;
            $('#blog').append(post);
        });
    });
})();

我希望它显示 6 个最新帖子。我不知道如何循环它,以便只显示 6 个最新的帖子。如果您想这样称呼它,请覆盖较旧的帖子。

ATM 我有 3 个帖子分配给按正确顺序显示的类别。标题、图像缩略图,然后是指向帖子的阅读更多链接。

我只是把它全部循环,所以在任何给定时间只有 6 篇文章,首先是最新的一篇。

它工作的快速图像。

4

3 回答 3

1

将您的代码更改为

 $(data.items).each(function(index) {
    //Stop 
    if(index > 5)
         return; 

   var post =  '<a href="my-url/' + this.fullUrl + '"><h2>' + this.title + '</h2></a><img src= "'+this.assetUrl+'" alt ="'+this.filename+'"><a href="my-url.com/' + this.fullUrl + '">Read More</a>' ;
      $('#blog').append(post);
  });

演示:http: //jsfiddle.net/B8kQ9/

于 2013-05-30T12:51:10.250 回答
1
$(data.items).each(function() {
        var post =  '<a href="http://fantasyfootballpundits.com/' + this.fullUrl + '"><h2>' + this.title + '</h2></a><img src= "'+this.assetUrl+'" alt ="'+this.filename+'"><a href="http://fantasyfootballpundits.com/' + this.fullUrl + '">Read More</a>' ;
        $('#blog').append(post);
    });

^^ 该代码循环遍历数据中的每个项目,因此它不仅限于 6

您可以使用类似这样的方法使用普通的 for 循环进行循环。

for(var i = 0; i < 6; i++)
{
    if(data.items[i] != null)
    {
        var current = data.items[i];
        var post =  '<a href="http://fantasyfootballpundits.com/' + current.fullUrl + '"><h2>'     + current.title + '</h2></a><img src= "'+current.assetUrl+'" alt ="'+current.filename+'"><a href="http://fantasyfootballpundits.com/' + current.fullUrl + '">Read More</a>' ;
        $('#blog').append(post);
    }
}

希望这会为您指明正确的方向

于 2013-05-30T12:54:55.677 回答
0

您可以直接检查 .each() 循环中的索引并在 6 次后中断循环,例如:

$(data.items).each(function(index) {
if(index>5)
 return false;
else{
      var post =  '<a href="my-url/' + this.fullUrl + '"><h2>'     + this.title + '</h2></a><img src= "'+this.assetUrl+'" alt ="'+this.filename+'"><a href="my-url/' + this.fullUrl + '">Read More</a>' ;
      $('#blog').append(post);
      return true;
    }
    });

这将在 6 次迭代后中断循环!

于 2013-05-30T13:05:37.203 回答