【问题标题】:Sort element positions by date按日期对元素位置进行排序
【发布时间】:2013-06-25 09:10:49
【问题描述】:

谁能告诉我如何按日期对元素位置进行排序?

示例 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中做了一些这样的演示......

我现在不参与:

$('.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/

有吗?

【问题讨论】:

    标签: jquery date sorting position


    【解决方案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 一起使用

    【讨论】:

    猜你喜欢
    • 2014-10-19
    • 1970-01-01
    • 2014-05-30
    • 2023-02-15
    • 2020-10-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多