javascript - 如何 for 循环找到您要查找的值然后添加 CSS 类?
问题描述
I'm trying to:
- for循环'槽'colorCard'并找到'div class="card'元素的值:'color: red'。2.然后在这个 'div class="card"'元素上添加'red'类
基本上我的 for 循环功能不起作用,并且在控制台中没有错误消息。
//我的HTML
<body>
<div class="container" id="all-cards">
</div>
</body>
//我的 JAVASCRIPT
let **colorCard** = [
{ color: 'color: none'},
{ color: 'color: none'},
{ color: 'color: none'},
{ color: 'color: none'},
{ color: 'color: red'},
{ color: 'color: none'},
{ color: 'color: none'},
{ color: 'color: none'}
];
const allCards = document.querySelector('#all-cards');
let card = colorCard.map(function(cardData){
return '**<div class="card">**' +
'<span>' + cardData.color + '<span>' +
'</div>';
});
allCards.innerHTML = card.join('\n');
//到这里我的代码正在运行
//下面的函数不起作用。
// Loop trough the 'let colorCard' finds the value of "color: red" then add CSS class of "red"
for( i = 0; i < card.length; i++){
if(card[i] === "color: red"){
console.log("Found it")
//Also I want to add a class on this card object
}
}
解决方案
- 循环
allCards.children
(返回所有卡节点)然后检查是否innerText
匹配"color: red"
。 - 然后使用 . 将类添加到匹配的元素
classList.add
。
let colorCard=[{color:"color: none"},{color:"color: none"},{color:"color: none"},{color:"color: none"},{color:"color: red"},{color:"color: none"},{color:"color: none"},{color:"color: none"}];
const allCards = document.querySelector('#all-cards');
let card = colorCard.map(function(cardData) {
return '<div class="card">' +
'<span>' + cardData.color + '<span>' +
'</div>';
});
allCards.innerHTML = card.join('\n');
const cards = allCards.children;
for (i = 0; i < cards.length; i++) {
if (cards[i].innerText.trim() === "color: red") {
console.log("Found it")
cards[i].classList.add("blue");
}
}
.blue {
background: cyan;
}
<body>
<div class="container" id="all-cards">
</div>
</body>
推荐阅读
- node.js - Puppeteer 在 .newPage() 处被阻止
- python - 如果重复,则在签入 mysql 后从列表中插入
- python - Discord.py 从后台线程关闭 Bot
- kubernetes - Kubernetes:如何确保在每个工作节点上安排一个 pod?
- c# - 如何将我从 DI 容器获取的参数从默认的空构造函数传递到基类?
- machine-learning - Kaggle - 猫与狗(用户警告:在 x_col="filename" 中发现 20000 个无效图像文件名。这些文件名将被忽略。)
- javascript - 删除子元素时未触发鼠标悬停
- python - 我如何弄清楚失败的原因?(crontab 或路径)
- pandas - 合并两个具有重叠 MultiIndex 列的 DataFrame
- javascript - 在每次路由更改时重新渲染特定组件