Como ADICIONAR classe em todos os estou usando o loop

0

Pergunta

Esta é a minha estrutura eu quero adicionar ímpar par de classe em cada duas divs então, como posso conseguir essa estrutura usando JavaScript loop tentei de tudo mas não tenho nada, eu estou aprendendo JavaScript ciclo, para alguém por favor me ajudar com isso

var i = 0;
$('.CollectionInner__Products .Grid__Cell .ProductItem').each(function(i) {
  var index = 0;
  if (index % 3 == 0) {
    $(this).addClass("odd");
  }
});
<div class="custompsps">
  <div class="ProductItem">
  </div>
  <div class="ProductItem">
  </div>
  <div class="ProductItem">
  </div>
  <div class="ProductItem">
  </div>

</div>
<div class="custompsps">
  <div class="ProductItem">
  </div>
  <div class="ProductItem">
  </div>
  <div class="ProductItem">
  </div>
  <div class="ProductItem">
  </div>

</div>

Eu quero essa estrutura:

i want this stucture
<div class="custompsps">
  <div class="ProductItem even">
  </div>
  <div class="ProductItem even">
  </div>
  <div class="ProductItem odd">
  </div>
  <div class="ProductItem odd">
  </div>

</div>
<div class="custompsps">
  <div class="ProductItem even">
  </div>
  <div class="ProductItem even">
  </div>
  <div class="ProductItem odd">
  </div>
  <div class="ProductItem odd">
  </div>

</div>
css html javascript jquery
2021-11-24 03:47:49
1

Melhor resposta

1
$('.CollectionInner__Products .Grid__Cell .ProductItem').each(function(index, element) {
  $(element).addClass(index & 2 ? "even" : "odd");
});

& é um bit a bit "e". index & 2 seria 0 para o índice 0 e 1, e 2 para o índice 2 e 3, alternando como este. 0 é falsy e não0 é truthy. (O uso de "par" e "ímpar" parecem se para trás, mas eu tenho seguido o seu uso.)

fórum .each aceita uma chamada de retorno que pode levar tanto a um índice e um elemento do argumento.

2021-11-25 00:25:00

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................