JQuery l oop скрыть предметы - PullRequest
       72

JQuery l oop скрыть предметы

0 голосов
/ 25 февраля 2020

Я хочу показать только 4 элемента и скрыть другие элементы. как я могу это сделать

$(".item").each(function(i, e){
      if(i == 4 ){
          $(this).addClass("hide");
      }
  })

Ответы [ 2 ]

3 голосов
/ 25 февраля 2020

Согласно синтаксису, если вы напишите i == 4 только на 4-м l oop, он будет скрыт. Вы должны написать i > 3, потому что массив начинается с нуля (0), который будет скрывать все после 4 элементов

$(".item").each(function(i, e){
      if(i > 3){ 
         $(this).addClass("hide");
      }
})

Или просто вы можете сделать это:

$('.item').slice(3).addClass('hide')
0 голосов
/ 25 февраля 2020

Вы не говорите, хотите ли вы показывать только первую четверку или конкретную четверку, но ваша попытка кода предлагает первую.

В этом случае вы не ' * вообще не нужно JavaScript - вы можете сделать это из CSS.

.item:nth-of-type(4) ~ .item { display: none; }

Если по какой-то причине вы будете sh делать это с JS, вы можете сделать:

$('.item:nth-child(4)').nextAll('.item').hide();
...