[英]Sorted div based on data-attribute timestamp into separate divs
我有一个for循环,将这些div放置在div中,这些div按日期与它们具有的数据时间戳进行排序。
现在,我想将项目包装到div中,这是排序的代码:
var albumSort = function () {
//All album thumbnails in items
var album = $(".photo-album");
var items = $(".js-album-thumbnail");
//items in Array
var arr = $.makeArray($(items));
console.log(album);
console.log(items);
//Sorting the album thumbnails array
arr.sort(function(a, b) {
//item a < b so the higher the time the higher the position
return new Date( $(a).attr('data-timestamp') ) < new Date( $(b).attr('data-timestamp') );
});
console.log(arr);
//Appending the Array items to the album
$(album).append(arr);
};
albumSort();
使用此功能后,它们将在页面上循环显示。 现在我想根据时间将数组中的项目包装到div中,因此如果时间戳为2015/01/01 08:10:15
,则必须包装为:
<div class="08"></div>
循环的项目,如果时间戳为2015/01/01 12:10:15
:
<div class="08"></div>
<div class="12"></div>
与所有其他项目在几小时内的相同时间
<div class="js-album-thumbnail" data-original="" data-downloadable="" data-timestamp="2015/11/19 16:32:52" data-thumbnail="" data-share=""><img src=""></div>
我认为类似的方法可能有效:
for (var i=0; i<24; i++){
$(".js-album-thumbnail").each(function(){
var element = this;
if ((new Date(element.attr("data-timestamp"))).getHours() == i){
$("div."+i).append(element)
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.