gpt4 book ai didi

javascript - 将相同的类添加到多个对象

转载 作者:行者123 更新时间:2023-11-30 09:16:52 25 4
gpt4 key购买 nike

我需要使用 jQuery 将单个类名添加到多个对象。

我知道像这样向多个选择器添加一个类:

$("#Div4 ,#Div5 ,#Div7 ,#Div8").addClass("something");

我尝试了以下代码,但它仅将类应用于第一个对象。

$(a[i].source, a[i].canvas, a[i].target).addClass("something");

在上述情况下,类名 something 仅应用于 a[i].source

想法?

最佳答案

假设 a[i].source 等实际上引用了一个节点/元素,您可以使用 .add() to add them individually to a collection ,即:

$(a[i].source).add(a[i].canvas).add(a[i].target).addClass('something');

这可能会不必要地冗长。您可以简单地构造一个数组并依赖 jQuery 中的隐式迭代 (credit to @Rory):

$([a[i].source, a[i].canvas, a[i].target]).addClass('something');

然而,这并不是真正需要的。只使用原生 JS 怎么样? Array.prototype.forEach()Element.classList截至今天,得到了广泛的支持:

ES6:

[a[i].source, a[i].canvas, a[i].target].forEach(el => el.classList.add('something'));

ES5(如果您需要向后兼容不支持 ES6 语法的浏览器):

[a[i].source, a[i].canvas, a[i].target].forEach(function(el) {
el.classList.add('something');
});

关于javascript - 将相同的类添加到多个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54532664/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com