2017-09-05 43 views
0

我建立了一个3列的画廊,需要它的每个中间元素(3n-1)来获得.portfolio-margin类。不能使用CSS:nth-​​child,因为它指的是所有.element,但我只想计数可见的。如何将(3n-1)公式放入JavaScript中?

我想要的portfolio-margin类添加到元件:visible元件的阵列与所述索引中0,2,5,8,11,等等如何可以做到这一点与.each()环的索引(i)?

$('.element:visible').each(function (i) { 
    if (i === 2 || i === 5 || i === 8 || i === 11 .....) { 
     $(this).addClass('portfolio-margin'); 
    } 
}); 
+0

除了n = 0的情况下,如果'(ⅰ%3 === 2)'将捕获所有3N-1 – mhodges

回答

1

有多种解决方案。您可以根据索引调整代码来计算位置。

$('.element:visible').each(function (i) { 
    if (i % 3 - 1 === 0) $(this).addClass('portfolio-margin'); 
}); 
+1

'则i%3-1 === 0'会给你每第一元件。应该是'i%3 === 2'' – mhodges

相关问题