(如何)是否可以根据其样式属性选择元素?
感谢this question,我们知道使用纯css是不可能的。
为了解决这个问题,我给出了具体的案例:我希望将p
中背景颜色为白色的所有span
和div
的背景颜色更改为透明。
有角度对它有利吗?或者还可以使用其他什么?
答案 0 :(得分:0)
var divs = document.querySelectorAll('div');
[].slice.call(divs).forEach(function(div) {
var color = window.getComputedStyle(div, null).backgroundColor;
if (color === 'rgb(255, 255, 255)') {
div.style.backgroundColor = 'transparent';
}
});
您需要对颜色进行标准化,因为不同的浏览器会以不同的格式返回颜色。
JSFiddle演示:https://jsfiddle.net/ebq6manb/1/
答案 1 :(得分:-1)
您可以使用选择器抓取所有div,遍历它们,使用attr('style')
方法然后检查它们是什么背景颜色。