所以我已经获取并解析了一些数据,我正在使用'each'来显示它:
$.ajax({
url : 'http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=10&callback=?&q=' + encodeURIComponent('http://news.google.com/news?pz=1&cf=all&ned=uk&hl=en&output=rss'),
dataType : 'json',
success : function (data) {
if (data.responseData.feed && data.responseData.feed.entries) {
$.each(data.responseData.feed.entries, function (i, e) {
$('.row').append("<div class=\"threecol\"">title: " + e.title + "<br></div>");
});
}
}
});
为了使网格正常运行,需要遵循以下结构:
<div class="container">
<div class="row">
<div class="threecol">
</div>
<div class="threecol">
</div>
<div class="threecol">
</div>
<div class="threecol last">
</div>
</div>
</div>
所以我的问题是,我如何对每个陈述进行排序,并将每4个项目放入一个新行,并使每个第4个项目都有“threecol last”而不是“threecol”?
答案 0 :(得分:2)
在$.each
循环之前添加一个计数器,然后添加一些简单条件以将rows
插入正确的位置,并指定正确的类:
if (c % 4 == 0) {
$('<div />').addClass('row').appendTo('.container');
}
$('<div />').addClass('threecol')
.text('title: ' + e.title)
.appendTo('.row:last');
if (c % 4 == 3) {
$('.threecol:last').addClass('last');
}
c++;