2013-10-24 33 views
0

具有HTML結構是這樣的:如何獲得父母的「直接」子女?

<div id="parent1" class="parent"> 
    <div class="child">1<div/> 
    <div> 
     <div class="child">2</div> 
    </div> 

    <div id="parent2" class="parent"> 
     <div class="child">3</div> 
     <div> 
     <div class="child">4</div> 
     </div> 
     <div id="parent3" class="parent"> 
     <div class="child">5</div> 
     </div> 
    </div> 
</div> 

我怎麼能寫僅返回指定的父的直接孩子一個選擇? 所以對於parent2我想孩子3和4的孩子而不是孩子5.

回答

3

你的問題是有點混亂,我認爲選擇會根據你的實際的HTML,但我認爲這應該爲您的具體實例工作:

http://jsfiddle.net/4ZQ4C/

$('.parent .child:not(".parent .parent .child")').addClass('selected'); 
+0

謝謝。它適用於我原來的問題。但這不完全是我想要的。我希望它可以在任何級別的父樹上工作,不僅適用於根級別。 –

0

jQuerychildren()將遍歷DOM的一個級別。

$('.parent').children('.child').each(function() { 

    // do something with each of the direct decedents 

}); 

在你的情況,這將意味着你將返回「第一」 .child和「第三」 .child項,頂部至底部在HTML讀取。