我觉得愚蠢..为什么我的“标题”div没有被选中?它的背景颜色没有改变。 我正在学习+操作符,所以我不是在寻找不同的选择器。
E + F:紧接在E元素前面的F元素
在这种情况下,div标签前面紧跟id为div的div,但未选中。
$("#divA + div").css("background-color", "red");
HTML
<div id="divA">
<div>
Header</div>
Lorem Ipsum is simply dummy text of the
printing and typesetting industry.
</div>
谢谢!
答案 0 :(得分:5)
你想:
$("#divA > div").css("background", "red");
>
是子选择器。它说找到我所有<div>
个元素,它们是ID为divA
的元素的直接子元素。当您写下$("#divA + div")
时,您说“找到<div>
紧跟{ID {1}} <div>
之后的divA
。+
表示”下一个兄弟“。< / p>
澄清:
<div id="divA">
<div>child</div>
</div>
<div>next</div>
所以:
$("#divA > div") // child
$("#divA + div") // next
答案 1 :(得分:1)
E + F是紧跟在兄弟 E元素之前的F元素。
您的标题div是#divA元素的子元素。
答案 2 :(得分:1)
E + F紧跟在E元素前面的F元素表示如果 E 是前面的话,它将选择 F 同级即可。
例如。您的HTML必须看起来像这样才能使选择器工作:
<div id="divA">
Lorem Ipsum is simply dummy text of the
printing and typesetting industry.
</div>
<div>Header</div>
否则你必须使用子或后代关系:
$('#divA div').css("background-color", "red");