我需要定位并向具有特定类的 all 元素的第n个子类添加一个类(即“ -show”)。第n个孩子必须采用变量形式(即:nth-child(i))。
我尝试使用eq()
,但它似乎只影响所选类的第一个元素的孩子。
jQuery('.text-wrapper > div').eq(1).addClass('-show');
也尝试合并each()
,但没有任何运气:
jQuery('.text-wrapper > div').eq(1).each(function(){ jQuery(this).addClass('-show'); });
我正在寻找的结果是:
<div class="text-wrapper">
<div></div>
<div class="-show"></div>
</div>
<div class="text-wrapper">
<div></div>
<div class="-show"></div>
</div>
答案 0 :(得分:4)
:nth-child(2)
应该这样做:
$(".text-wrapper > *:nth-child(2)").addClass("-show");
.-show {
color: green;
}
<div class="text-wrapper">
<div>first</div>
<div>second</div>
</div>
<div class="text-wrapper">
<div>first</div>
<div>second</div>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
.eq
不起作用,因为它只是在jQuery集合中的给定索引处获取元素。