jQuery同位素&x2014;按类别排序,但请指定哪个先到

jQuery同位素&x2014;按类别排序,但请指定哪个先到,jquery,sorting,jquery-isotope,Jquery,Sorting,Jquery Isotope,我正在寻找一种排序行为,一种匹配特定类别并将其放在列表前面的行为。就像过滤器一样,除非不删除其他项目 想象一下同位素网格中的这些类别项目: 红色的 绿色的 蓝色的 红色的 绿色的 蓝色的 如果我按类别排序,它会按字母顺序显示: 蓝色的 蓝色的 绿色的 绿色的 红色的 红色的 我想要的是在前面浮动一个特定的类别,例如“绿色”,如下所示: 绿色的 绿色的 红色的 红色的 蓝色的 蓝色的 这可能吗 我尝试为每个类别添加getSortData函数,如下所示: green : fu

我正在寻找一种排序行为,一种匹配特定类别并将其放在列表前面的行为。就像过滤器一样,除非不删除其他项目

想象一下同位素网格中的这些类别项目:

  • 红色的
  • 绿色的
  • 蓝色的
  • 红色的
  • 绿色的
  • 蓝色的
如果我按类别排序,它会按字母顺序显示:

  • 蓝色的
  • 蓝色的
  • 绿色的
  • 绿色的
  • 红色的
  • 红色的
我想要的是在前面浮动一个特定的类别,例如“绿色”,如下所示:

  • 绿色的
  • 绿色的
  • 红色的
  • 红色的
  • 蓝色的
  • 蓝色的
这可能吗

我尝试为每个类别添加
getSortData
函数,如下所示:

      green : function( $elem ) {
        var $greenItems = $elem.filter('.green');            
        var $otherItems = $elem.filter(':not(.green)');
        return $greenItems.add($otherItems);
      }
      // repeat for blue, red, etc
但那没用。

这对我来说很有效:

green : function( $elem ) {
    var isGreen = $elem.hasClass('green');
    return (!isGreen?' ':'');
},
// etc
演示: