gpt4 book ai didi

javascript - 切换以向具有特定类的所有元素添加/删除类

转载 作者:行者123 更新时间:2023-12-04 10:32:03 24 4
gpt4 key购买 nike

我一直在尝试进行切换,因此当单击它时,它会为每个具有“ChangeColors”类但无法这样做的元素添加一个类。
它返回

TypeError: Cannot read property 'add' of undefined



CSS
.ChangeColors {
background-color: #ff801b;
color:black;
}

.bluecolor {
background-color: blue;
color:white;
}

Javascript
function ChangeColors() {
var single = document.querySelector('.ChangeColors');
var all = document.querySelectorAll('.ChangeColors');
if (single.classList.contains('bluecolor')) {
all.classList.remove('bluecolor');
console.log("remove");
} else {
all.classList.add('bluecolor');
console.log("add");
}
}

最佳答案

您正在尝试使用 .classListNodeList类型是什么document.querySelectorAll返回,您应该改为在 NodeList 中的每个元素上使用它。

您实际上可以使用 classList.toggle为此,以避免像这样进行所有手动切换。

const all = document.querySelectorAll('.ChangeColors');

all.forEach(elem => {
elem.classList.toggle("bluecolor")
});

关于javascript - 切换以向具有特定类的所有元素添加/删除类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60372885/

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