按日期对元素位置排序

时间:2013-06-25 09:10:50

标签: jquery date sorting position

任何人都可以告诉我如何按日期对元素位置进行排序?

例外HTML:

<div class="side left">
    <div class="box" data-date="06/29/2013"></div>
    <div class="box" data-date="06/29/2013"></div>
    <div class="box" data-date="06/30/2013"></div>
</div>

<div class="side right">
    <div class="box" data-date="06/28/2013"></div>
    <div class="box" data-date="06/30/2013"></div>
</div>

我想按日期排序方框,谁比较新的更低到最低位置。 (如果你理解的话)

我在这样的GIF中制作了一些演示......

Sort element positions by date

我现在对此没有任何意义:

$('.side .box').each(function(i){
        var box = $(this);
        var date = $(this).data('date');
        var format_date = new Date(date);
        var top = parseInt(box.offset().top);
        // HERE WE GO !!!

});

现在我不知道怎么做,有人可以帮助我或者说些什么吗?

游乐场+演示: http://jsfiddle.net/b2Wx5/


Okey:我现在来这个步骤,任何人都可以查看吗?

http://jsfiddle.net/b2Wx5/7/

任何?

1 个答案:

答案 0 :(得分:1)

您使用此插件http://james.padolsey.com/javascript/sorting-elements-with-jquery/。 在sortElements中添加一些更改以考虑日期 像

这样的东西
  var date1 = // pass date from first elemnt ;
  date1 = date1.split('/');
  date1 = //pass date from second element;
  var date2 = $(b).find(".date").text();
  date2 = date2.split('/');
  date2 = new Date(date2[2], date2[1] - 1, date2[0]);
  return date1 < date2 ? 1 : -1;  

得到类似问题How to sort div's by content date。通过添加一些更改,您可以将其与sceanrio

一起使用