我想更改具有 left=0 的每个 div。
我尝试让 jQuery 检查。我是这样做的:
if ($('.box').css("left") == "0"){
$('.box').addClass("active");
}
它对我不起作用。有人有解决方案吗?
if ($('.fiets').css("left") == "0") {
$('.fiets').addClass("active");
}
.box {
width: 20vw;
height: 20vw;
background: #6989FF;
position: absolute;
border: solid 1px red;
transition: all 0.2s ease-in-out;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="slider">
<article class="box"></article>
<article class="box"></article>
<article class="box"></article>
<article class="box"></article>
<article class="box"></article>
</div>
最佳答案
同时 .css()
可以对集合进行操作,它只能在设置属性时这样做,而不能在读取它们的值时这样做。如果您尝试这样做,它只会返回集合中第一个元素的值。您必须迭代每个元素。
另外,作为 @Stefan noted , 计算值包括px
单位。
$('.box').each(function() {
if ($(this).css("left") == "0px") {
$(this).addClass("active");
}
})
关于jQuery:检查 div 的 CSS 是否:left == 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52988601/