Ako PRIDAŤ triedy v každom div pomocou slučky

0

Otázka

Toto je môj štruktúra chcem pridať odd aj triedy v každej dvoch divs tak ako môžem dosiahnuť túto štruktúru pomocou JavaScript slučky snažil som sa všetko, ale som nič učím JavaScript slučky, takže niekto prosím, pomôžte mi s týmto

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>

Chcem v tejto štruktúre:

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

Najlepšiu odpoveď

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

& je bitwise "a". index & 2 by 0 pre index 0 a 1, a 2 pre index 2 a 3, striedavý, ako je tento. 0 je falsy a non-0 je truthy. (Vaše používanie "i" a "nepárne" zdá sa dozadu, ale ja som nasledovala svoje použitie.)

jQuery je .each akceptuje žiadosť o spätný hovor, ktorý môže trvať aj index a prvok argument.

2021-11-25 00:25:00

V iných jazykoch

Táto stránka je v iných jazykoch

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