的jQuery - 获得一个新的水平的孩子只有
问题描述:
<div id="headerWrapper">
<H1>TEST</H1>
<div id="paarofileLinks">
<ul id="primaryNav" role="navigation">
<li id="musicNav" class="navItem">
<a href="/music" class="nav-link">Music</a>
</li>
<li id="listenNav" class="navItem">
<a href="/listen" class="nav-link">Radio</a>
</li>
<li id="eventsNav" class="navItem">
<a href="/events" class="nav-link nna" id="vbulletin_css2">Events</a>
</li>
<li id="chartsNav" class="navItem">
<a href="/charts" class="nav-link">Charts</a>
</li>
<li id="communityNav" class="navItem">
<a href="/community" class="nav-link">Community</a>
</li>
<li id="originalsNav" class="navItem">
<div>
<a href="http://originals.last.fm" class="nav-link">Originals</a>
</div>
</li>
</ul>
</div>
,如果我用这个选择
$("#headerWrapper").children("*");
它会得到所有的孩子,但我需要返回刚才
<H1>TEST</H1>
<div id="paarofileLinks"></div>
没有<ul>
和剩余的列表
说明:我不知道页面的结构,所以我需要一些东西来做一般的工作,并与所有结构一起工作
答
不像find()
,children()
只选择元素的直接子元素。
所以你的查询只返回你想要的2个元素。如果情况并非如此,那么你做错了什么。
您使用选择器是没有必要的,因为children()
和children("*")
返回相同的结果。
数组中的第二个元素(它是div)包含你的ul和它的子元素。所以如果你进一步传播,你也会得到所有这些元素。但是,查询只会返回您提到的2个元素。
+0
我使用[phpquery](http://code.google.com/p/phpquery/),它似乎是一个图书馆中的错误,让所有的孩子感谢您的答案 – 2012-07-10 12:52:45
你所描述的**是'.children()'函数的功能,尽管你不需要使用''*“'选择器。 – 2012-07-10 12:33:58