jQuery基础知识 - 选择器

时间:2010-04-26 05:19:49

标签: jquery

我觉得愚蠢..为什么我的“标题”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>

谢谢!

3 个答案:

答案 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");