Javascript 然后,计数类指定要更改的数量

Javascript 然后,计数类指定要更改的数量,javascript,jquery,html,Javascript,Jquery,Html,我有下面的JavaScript函数,其中我使用类名计算总的div,但不是所有的都必须更改,这是用amount参数指定的。因此有4个类,每个类都对类进行计数,然后for循环根据amount参数对它们进行更改 但这似乎不起作用,请参见注释掉的版本- 函数更改图像(更改,金额){ 变量$projImg=$('.proj img'); $。每个($项目,功能(i){ $(this.attr('src','src/img/'+change+'Slide'+(i+1)+'.png'); }); //$。每个

我有下面的JavaScript函数,其中我使用
类名
计算总的
div
,但不是所有的都必须更改,这是用amount参数指定的。因此有4个类,每个类都对类进行计数,然后for循环根据amount参数对它们进行更改

但这似乎不起作用,请参见注释掉的版本-

函数更改图像(更改,金额){
变量$projImg=$('.proj img');
$。每个($项目,功能(i){
$(this.attr('src','src/img/'+change+'Slide'+(i+1)+'.png');
});
//$。每个($项目,功能(j){
//对于(变量i=0;i
您可以使用一个数组,然后对其进行
切片
以使其包含的元素数量不超过
数量,无需jQuery:

function changeImages(change, amount) {
  const projImgs = [...document.querySelectorAll('.proj-img')]
    .slice(0, amount);
  projImgs.forEach((img, i) => {
    img.src = 'src/img/' + change + 'Slide' + (i + 1) + '.png';
  });
}
只需使用jQuery的:

函数更改图像(数量){
const$matches=$('.foo').slice(0,amount);
$matches.addClass('bar');
}
改变图像(10)
.foo{
边框底部:8px实心红色;
}
.酒吧{
边框颜色:青色;
}
.foo:悬停{
边框颜色:黑色;
}

使用
:lt()
选择器

var金额=5,变动=“”;
$('.proj img:lt('+amount+')).map(函数(i,el){
$(el).attr('src','src/img/'+change+'Slide'+(i+1)+'.png');
});
console.log($('.proj img'))

var$projImg=$('.proj img')。切片(0,金额)你可以分享你在attr()中设置的图像路径吗