我想要实现的目标: 所有不透明度为 0.01 的子级的不透明度值都会增加 1。
问题:正如您在下面看到的,这就是我所能得到的。我不知道如何告诉 js 根据计算值选择所有这些子元素并向它们添加一些样式。我循环遍历它们并获取它们的索引以及它们的计算值,但这就是我现在陷入困境的地方。
HTML:
<div id='a'>
<span>How</span>
<span>are</span>
<span>you?</span>
</div>
JS:
var elem = document.getElementById('a');
for (i = 0; i < 10; i++) {
var x = window.getComputedStyle(elem.children[i], null).getPropertyValue('opacity');
parseFloat(x)[i]
}
问题:如何向具有特定属性计算值的元素数组添加某种样式?
最佳答案
如果你想用它做任何事情,你需要捕获返回值parseFloat()
。你会想做这样的事情:
var elem = document.getElementById('a');
for (i = 0; i < elem.children.length; i++) {
var x = window.getComputedStyle(elem.children[i], null).getPropertyValue('opacity');
var opacity = parseFloat(x);
if (opacity === 1.0) {
elem.children[i].style.your_style = whatever;
}
}
关于javascript - 设置具有特定计算 CSS 属性值的元素数组的样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33059021/