JQuery 循环隐藏项目

JQuery loop hide items

我只想显示 4 个项目并隐藏其他项目。我该怎么做

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

您没有说是只想显示 四个,还是特定的四个,但您的代码尝试建议前者。

在这种情况下,您根本不需要 JavaScript - 您可以从 CSS.

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

如果出于某种原因你仍然希望使用 JS,你可以这样做:

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

根据语法, 如果你只在第 4 个循环写 i == 4 它会隐藏。 你必须写 i > 3 因为数组从零(0)开始,这将隐藏 4 项后的所有内容

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

或者您可以这样做:

$('.item').slice(3).addClass('hide')