$('div + p')
和$('div ~ p')
之间的主要区别是什么。
如果我有这样的东西
<div class="active"></div>
<p class="pactive"></p>
返回相同的值。
答案 0 :(得分:2)
答案 1 :(得分:1)
X + Y
ul + p {
color: red;
}
这被称为相邻选择器。它将仅选择前一个元素前面的元素。在这种情况下,每个ul后只有第一段会有红色文字。
X~Y
ul ~ p {
color: red;
}
这个兄弟组合器类似于X + Y,但是它不那么严格。虽然相邻的选择器(ul + p)只会选择紧跟前一个选择器之前的第一个元素,但这个选择器更加通用。它将参考我们上面的例子选择任何p元素,只要它们遵循ul。
<强> For Reference 强>
答案 2 :(得分:-1)
我找到了答案。
<div class="active"></div>
<p class="pactive"></p>
<div></div>
<p></p>
<div></div>
<p></p>
<div></div>
$("div.active + p")
只会选择p
pactive
类p
(即div
旁边的$(div).next();
,与<p class="pactive"></p>
相同<) / p>
结果:
$("div.active ~ p")
其中p
将选择仅在div.active
之后的所有同级p
。如果在div.active
之前有任何p
元素,那么不要选择<p class="pactive"></p>
<p></p>
<p></p>
。
结果:
{{1}}