如何将(3n-1)公式代入JavaScript?

How to put (3n-1) formula into JavaScript?

我建立了一个 3 列画廊,需要它的每个中间元素 (3n-1) 来获得 .portfolio-margin class。不能使用 css :nth-child 因为它指的是所有 .element,但我只想计算可见的。

我想将 portfolio-margin class 添加到索引为 0、2、5、8、11 等的 :visible 元素数组中的元素。我如何才能使用 .each() 循环的索引 (i) 执行此操作?

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

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

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