我有这样的代码:
<span class="no1">
<button class="num1"><span class="abc"></span></button>
<button class="num2"><span class="abc"></span></button>
</span>
<span class="no2">
<button class="num1"><span class="abc"></span></button>
<button class="num2"><span class="abc"></span></button>
</span>
现在,我想使用类abc
,类num1
内,类跨度no2
内的跨度更改颜色
我尝试了$(".no2").children('.num1').css('color', 'orange')
答案 0 :(得分:3)
根据您的问题,您要更改span class="abc"
内具有span
和class="num1"
的{{1}}元素的颜色
span class="no2"
在jQuery中,$(选择器nextSelector)表示$(“祖先子孙”)
某个元素的后代可以是该元素的子代,孙代,曾孙代,等等。
答案 1 :(得分:1)
如果您决定抛弃jQuery,只需背负Sushil的答案querySelector
即可模仿这种行为。
const b = document.querySelector('.no2 .num1 .abc');
b.classList.add('blue');
.blue { color: blue };
<span class="no1">
<button class="num1"><span class="abc">test1</span></button>
<button class="num2"><span class="abc">test2</span></button>
</span>
<span class="no2">
<button class="num1"><span class="abc">test3</span></button>
<button class="num2"><span class="abc">test4</span></button>
</span>
答案 2 :(得分:0)
您可以这样使用jQuery选择元素:
$(.no1 .num1).first().css( "background-color", "red" );
请找到这个小提琴:https://jsfiddle.net/jega1syb/#&togetherjs=bVGaanQ61z