可以't将带有变量的id添加到类中

can't add id with variable to classes

本文关键字:id 添加 变量 可以      更新时间:2023-09-26

我如何迭代类名,我不能wrap,也不能为它们添加id+var,问题是:

$('.meteo')返回一个list,所以$('.meteo')[0]将返回第一个元素,但为什么我不能在循环中操作它呢?例如:

for (h = 0; h < 4; h++) {
    $('.meteo')[h].attr('id', 'meteo'+h);
}

这是因为在非jQuery对象上使用了jQuery方法.attr()

$('.meteo')[0]变成了一个原生DOM元素,并且它没有jQuery方法。

您可以使用.eq()方法通过其索引来访问元素:

$('.meteo').eq(h).attr('id', 'meteo' + h);

您也可以直接更改id属性:

$('.meteo')[h].id = 'meteo' + h;

或。。

document.querySelectorAll('.meteo')[h].id = 'meteo' + h;

返回的jQuery集中的项是本机DOMElements,您需要像一样重写它们

$($('.meteo')[h]).attr('id', 'meteo'+h);

或者使用本地setAttribute方法,如

仅限本机:

var metro = document.querySelectorAll('.metro'), i;
for (i = 0; i < 4; i++)
    metro[i].setAttribute('id', 'metro'+i);