首先,我要感谢您抽出宝贵时间来研究这个问题。非常感激。
请求: 我最初的意图是按一年中的一周对所有帖子进行分组,即使用分隔线将第 45 周的所有帖子分组在一起,但我改变了想法,以便更容易编写代码。我现在希望它按发布日期分组。
到目前为止的努力: 我遇到了 autodividersSelector 函数并尝试实现它。它似乎有效,但结果不正确。输出将所有帖子分组在一个日期下的一个分隔符中,而不是按发布日期拆分分隔符。见下图:
请查看下面的代码,并告知我可能在哪里弄错了,或者我是否以正确的格式应用它。我很高兴在您的帮助下继续调查学习曲线。提前致谢
HTML 代码:
$(document).on('pagebeforeshow', '#blogposts', function () {
$.ajax({
url: "http://howtodeployit.com/category/daily-devotion/feed/?json=recentstories" ,
dataType: "json" ,
beforeSend: function () {$('.loader').show();},
complete: function () {$('.loader').hide();},
success: function (data){
$('#postlist').empty();
$.each(data.posts, function (key, val) {
//Format date
var dateString = val.date.split(' ')[0];
var vdate = dateString.split("-")[1] + " " + monthStrings[parseInt(dateString.split("-")[1])] + ", " + dateString.split("-")[0];
//Output data collected into page content
var rtitle = $('<p/>', {'class' : 'vtitle', html: val.title}); rdate = $('<p/>', {'class': 'vdate' , html: vdate});
rid = $('<a href="#d-posts" onclick="showPost(' + val.id + ')"></a>');
var rappend = $('<li/>').append(rtitle, rdate);
console.log($('#postlist').append($(rappend).wrapInner(rid).fadeIn(600)));
$('#postlist').listview({
autodividers: true,
autodividersSelector: function (li) {
var out = $(li).find(vdate)
console.log(out.selector);
return out.selector;
}
});
return (key !== 5);
});
$("#postlist").listview().listview('refresh').append('<div class="more-posts" style="text-align: center;">Load more posts...</div>');
},
error: function (data) {
alert("Service currently not available, please try again later...");
}
});
});