Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery将类添加到div中的前5个元素_Javascript_Jquery_Html - Fatal编程技术网

Javascript 使用jQuery将类添加到div中的前5个元素

Javascript 使用jQuery将类添加到div中的前5个元素,javascript,jquery,html,Javascript,Jquery,Html,我发誓我以前做过这件事,但我正在尝试计算一个div中的前5项,然后向它们添加一个类,然后向其余项添加一个类 我有这个: var counter = 0; $('.images img').each(function(i) { if (i == 0) { counter = 0; } else { counter++; } if (counter < 5) { $(this).addClass('this'); } el

我发誓我以前做过这件事,但我正在尝试计算一个div中的前5项,然后向它们添加一个类,然后向其余项添加一个类

我有这个:

var counter = 0;
$('.images img').each(function(i) {
   if (i == 0) {
       counter = 0;
   } else {
       counter++;
   }
   if (counter < 5) {
       $(this).addClass('this');
   } else {
     $(this).addClass('other');
   }
});
var计数器=0;
$('.images img')。每个(函数(i){
如果(i==0){
计数器=0;
}否则{
计数器++;
}
如果(计数器<5){
$(this.addClass('this');
}否则{
$(this.addClass('other');
}
});

这很管用,但我觉得可以清理一下。有什么建议可以让它更精简吗?

要达到预期的效果,请使用下面的选项

  • 循环div,每个
  • 检查索引和addClass
  • 使用return false在第5个元素后退出循环
  • $('div')。每个(函数(索引){
    如果(指数<5){
    $(this.addClass('mark'))
    }否则{
    返回false;
    }
    })
    .mark{
    颜色:红色
    }
    
    11
    12
    13
    14
    15
    1.
    
    1
    要达到预期效果,请使用以下选项

  • 循环div,每个
  • 检查索引和addClass
  • 使用return false在第5个元素后退出循环
  • $('div')。每个(函数(索引){
    如果(指数<5){
    $(this.addClass('mark'))
    }否则{
    返回false;
    }
    })
    .mark{
    颜色:红色
    }
    
    11
    12
    13
    14
    15
    1.
    1
    可以使用jQuery(其中索引以零为基础)

    通过jQuery,您可以使用(其中索引是基于零的)


    最简单的解决方案是不使用JavaScript,而只使用CSS选择器。第n个子项将允许您以一系列项目为目标

    li{
    背景颜色:黄色;
    }
    李:第n个孩子(-n+5){
    背景颜色:绿色;
    }
    • 一,
    • 二,
    • 三,
    • 四,
    • 五,
    • 六,
    • 七,
    • 八,
    • 九,
    • 十,
    • 十一,

    最简单的解决方案是不使用JavaScript,而只使用CSS选择器。第n个子项将允许您以一系列项目为目标

    li{
    背景颜色:黄色;
    }
    李:第n个孩子(-n+5){
    背景颜色:绿色;
    }
    • 一,
    • 二,
    • 三,
    • 四,
    • 五,
    • 六,
    • 七,
    • 八,
    • 九,
    • 十,
    • 十一,

    或者,您可以使用.images img:nth child(-n+5){stuff}使用纯css

    .test{
    颜色:绿色;
    背景:黄色;
    }
    .img跨度:第n个子项(-n+3){
    颜色:红色!重要;
    背景:蓝色;
    }
    
    
    测验
    测验
    测验
    测验
    测验
    
    或者,您可以使用.images img:nth child(-n+5){stuff}使用纯css

    .test{
    颜色:绿色;
    背景:黄色;
    }
    .img跨度:第n个子项(-n+3){
    颜色:红色!重要;
    背景:蓝色;
    }
    
    
    测验
    测验
    测验
    测验
    测验
    
    为什么需要jQuery?为什么不使用CSS选择器呢?为什么需要jQuery?为什么不使用CSS选择器呢?
    $('.images img:lt(5)').addClass('this')