【问题标题】:how to sort by date (new) with jquery isotope如何使用 jquery isotope 按日期排序(新)
【发布时间】:2012-01-09 21:10:03
【问题描述】:

请原谅我,因为我对 JS 有点新手,只是知道足以操纵。

对于那些熟悉同位素 (http://isotope.metafizzy.co/docs/sorting.html) 的人,我在页面顶部有一个按日期排序的按钮。同位素找到元素

<span class="date"> 01/04/2012 </span>

用这个:

$container.isotope({
    getSortData : {
        date : function ( $elem ) {
        return $elem.find('.date').text();
}});

效果很好,但我需要翻转(下降)日期顺序

同位素有一个作用:

$('#container').isotope({ 
  sortBy : 'date',
  sortAscending : false
});

但我无法让它工作 - 这只是使默认设置按日期排序,而不是在我单击时排序。我认为这只是语法问题......我如何/在哪里可以放 sortAscending: false ??

谢谢...

编辑查看 Demos 中的一些源代码,我看到:

<a href="#sortAscending=false">

可以,但是我已经通过这个来排序了:

<a href="#sortBy=date">

从较早的日期信息中找到一个跨度...

【问题讨论】:

  • 不要复活一个旧线程,但你有没有找到答案?

标签: javascript jquery jquery-ui


【解决方案1】:

这是我的做法,jsFiddle

$container.isotope({
    itemSelector: '.element',
    getSortData: {
        date: function ($elem) {
            return Date.parse($elem.find('.date').text());
        }
    }
});

日期的格式似乎无关紧要,可以升序和降序。

parse() 方法解析日期字符串并返回日期字符串与 1970 年 1 月 1 日午夜之间的毫秒数。

基本上,它会将您的日期字符串转换为易于比较的漂亮实心数字。

【讨论】:

  • 谢谢!那个jsFiddle有很多排序的例子!
  • 我玩过你的 jsFiddle,但它似乎并没有真正起作用。尝试先关闭变量大小,以便更好地查看排序顺序。
  • @magi182 你点击日期按钮了吗?
  • 我做到了。我试图查看您的排序顺序是如何工作的,但它似乎有点不对劲......这就是我所做的: 1. 单击“切换可变大小”,以便更容易查看排序顺序。 2. 单击排序选项卡下的“日期”。 3.尝试点击升序排序或降序排序期望它反转排序顺序......它似乎没有正确排序......
  • @magi182 我刚刚又检查了一遍,它似乎工作正常。我什至添加了更多日期进行测试。也检查了升序和降序...您可以发布您所看到的屏幕截图吗?
【解决方案2】:

这是我按日期排序的操作。

如果您的日期格式为“01/01/2012”,那么您需要将其转换为 javascript 日期对象。

getSortData: {
    date: function ($elem) {
        var dateStr = $elem.find('.date').text(),
            dateArray = dateStr.split('/'),
            year = dateArray[2],
            month = dateArray[0],
            day = dateArray[1];
        return new Date(year, month, day);
    }
}

那你照常做

$('#container').isotope({ sortBy: 'date' });

【讨论】:

  • 你应该返回这个“return year.toString() + month.toString() + day.toString();”也就是说,您的退货将按字母顺序排列一周中的几天
猜你喜欢
  • 2012-03-28
  • 1970-01-01
  • 2011-02-21
  • 1970-01-01
  • 2012-01-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多