我需要为前六个过滤项目添加一个类。
我从官方文档中获得解决方案的第一项:
$($container.data('isotope').filteredItems[0].element).addClass('first');
如何为接下来的五个项目添加该类?
@Desandro在同位素存储库上的答案:https://github.com/metafizzy/isotope/issues/1040
这里有一种方法可以做到这一点:
// get Isotope instance
var iso = $container.data('isotope');
// add class to first 6 elements
iso.filteredItems.forEach( function( item, i ) {
if ( i < 6 ) {
$( item.element ).addClass('first-6');
}
});
或
// get array of first 6 item elements
var firstElems = iso.filteredItems.slice( 0, 6 ).map( function( item ) {
return item.element;
});
$( firstElems ).addClass('first-6');
只需在循环中执行相同的操作:
if($container.data('isotope').filteredItems.length >= 6)
{
for (var i = 1; i <= 6; i++)
{
$($container.data('isotope').filteredItems[i].element).addClass('first');
}
}