2011-10-11 45 views
2

我有這樣的佈局:jQuery的隱藏每個事業部的所有孩子除了首先

<div class="list"> 
    <ul></ul> 
    <ul></ul> 
</div> 
<div class="list"> 
    <ul></ul> 
    <ul></ul> 
    <ul></ul> 
    <ul></ul> 
</div> 
<div class="list"> 
    <ul></ul> 
    <ul></ul> 
</div> 

我想只顯示每一個DIV使用jQuery的第一個UL認證。我知道這是可能的,但在使用$('div.list ul:gt(1)').each(function(){$(this).hide()});時,它顯示了第一個div的內容並隱藏了其他所有內容。

回答

4

小提琴:http://jsfiddle.net/y9bEG/3/

使用此:

$("div.list").each(function(){ 
    $("ul:not(:first)", this).hide(); 
}); 

它選擇與list類中的每個div元件,並隱藏所有<ul>元件,其不是第一個元素。

+0

結果與他的示例相同:http://jsfiddle.net/y9bEG/ – jvenema

+0

@jvenema試試這個小提琴:http://jsfiddle.net/y9bEG/3/ –

+2

'$(「div.list ul:not( :first-child)「)。hide()'應該工作(而不是':first')。 –

相關問題