什么是“>”在jQuery中意味着如何使用它?

时间:2014-12-01 22:21:12

标签: jquery

我是jQuery代码的新手,最近看到了这样的代码:

var $pages = $('#main > div');

这是否意味着$ pages将是#main下的第一个div或#main下的所有div? 如果我有HTML代码:

<div id="main">
    <div class="sub-div" id="1">1</div>
        <div id="1a">1a</div>
    <div class="sub-div" id="2">2</div>
    <div class="sub-div" id="3">3</div>
</div>

那么,$ pages是一个包含所有3个div还是仅包含第一个div的数组?

此外,我可以使用

var $pages = $('#main > div > div');

获得&#34; 1a&#34; ?

非常感谢!

2 个答案:

答案 0 :(得分:0)

它与CSS选择器“&gt;”的作用相同 它返回具有右手部分中提到的特征的元素的子元素。

离。

var $pages = $('#main > div');

将返回所有div的数组,这些数组是id为“main”的元素的子元素

因此

var $pages = $('#main > div > div');

将返回divdiv s,其中{{1}}个元素的元素为“main”。

页面中只有一个div具有子div,即id为“1a”的div

答案 1 :(得分:0)

$ pages将是#main的所有直接子div。 如果你有

<div id=main>
    <div id=1>
        <div id=2></div>
    </div>
    <div id=3></div>
    <div id=4></div>
    <span id=5>
        <div id=6></div>
    </span>
</div>

然后$('#main > div')将获取1,3和4。

如果您执行了$('#main div'),那么您将找到所有匹配的后代,而不仅仅是直接后代,以便匹配1,2,3,4和6。