【发布时间】:2022-07-08 16:15:07
【问题描述】:
如何通过匹配其 CSS 属性值找到该元素?
例如,如果元素的背景颜色是绿色,那么做点什么……
const elm = document.getElementsByClassName('elm');
[...elm].forEach(function(s) {
//find the element which background color is green
//then console.log(theItem)
})
.elm {
width: 200px;
height: 100px;
}
.elm1 {
background-color: red;
}
.elm2 {
background-color: green;
}
.elm3 {
background-color: blue;
}
<div class="elm elm1"></div>
<div class="elm elm2"></div>
<div class="elm elm3"></div>
【问题讨论】:
-
getComputedStyle可以提供帮助,但在此特定示例中,您可以只使用.getElementsByClassName('elm2') -
@NickParsons 谢谢,我看到了文档,他将
getComputedStyle用于一个元素,我想不出如何使用它来检查具有相同类名的多个项目...... -
在您的代码中,您已经有一个循环遍历您的所有元素,因此
s是一个您可以检查其样式的单个元素,然后如果它推入一个数组有你想要的颜色。
标签: javascript html css