jQuery Isotope – 按类别排序,但指定哪个先来
我正在寻找一种排序行为,一种与特定类别相匹配的行为,并将其带到列表的前面。 像filter一样,除了不删除其他项目。
想象一下同位素网格中的这些类别项:
- 红色
- 绿色
- 蓝色
- 红色
- 绿色
- 蓝色
如果按类别排序,则按字母顺序显示:
- 蓝色
- 蓝色
- 绿色
- 绿色
- 红色
- 红色
我想要的是将特定类别浮动到前面,例如“绿色”,如下所示:
- 绿色
- 绿色
- 红色
- 红色
- 蓝色
- 蓝色
这可能吗?
我已经尝试为每个类别添加一个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
演示: http : //jsfiddle.net/Yvk9q/9/