2015-06-10 73 views
1

我正在尋找隱藏深層嵌套div(具有類或ID名稱)在一個容器div中只有類名。容器div是由應用程序生成的,所以我無法設置它的ID。我不知道div生成的級別有多少,所以我不能使用路徑 - 因爲該路徑有時會根據生成的頁面而改變。 這幾乎是我需要使用循環或其他東西。jQuery選擇或隱藏深入嵌套的div在一個類的div內

這裏就是我有

<div class ="container"> 
    <div class ="level1"> 
    <div class = "level2"> 
     <other nested divs and html here...> 
       <div class = "levelN" id="idLevelN"> 
         content to hide 
         <more divs and html here..../> 

       </div> 
     </other nested divs and html here...> 
    </div> 
    </div> 
</div> 

我想隱藏帶class = 「levelN」 ID = 「idLevelN」 股利。

我嘗試了各種各樣的東西,但我放棄了。我試圖使用find(),filter()等...幫助?只有一流的name.I容器專區內由於

+0

你能不能給我們任何識別屬性? – Brian

+0

class =「levelN」id =「idLevelN」 –

+0

它是levelN還是N是佔位符?如果它是levelN,你可以這樣做'$('。levelN#idLevelN')。hide()' – Brian

回答

0

可以使用.children()選擇,以過濾所選元素的孩子的所有元素。

您也可以使用.parents()檢查divcontainer類是有效的(是父母)。

像:

if ($('#idLevelN').parents('.container').length){ 
    $('#idLevelN').children().hide(); 
} 

這裏有一個Fiddle

+1

謝謝!這很好! –

+0

@TheProfiler我不認爲這是你問的。你說你沒有idLevelN。你說你想罰款最深的嵌套div與班級,這是我的答案是所有關於。這個回答可信賴於idLevelN,但你沒有它 –

+1

不,我沒有說最深的div,我只是說這是深入的,不知道有多少級別。馬克C的建議爲我所需要的。謝謝大家 - 讚賞! –

0

我在尋找隱藏深層嵌套的div(與類或ID名) 不知道在div究竟是如何 許多層面產生

假設你有這樣的:

<div id="SearchHere"> 
    <div> 
    <div> 
     <div></div> 
    </div> 
    </div> 
    <div></div> 
    <div> 
    <div> 
     <div> 
     <div >aaaaa</div> /* you want this*/ 
     </div> 
    </div> 
    </div> 
    <div> 
    <div></div> 
    </div> 
</div> 

然後,你可以做this

jQuery.fn.deepestDiv = function() 
{ 
    var $target = this.children(), 
     $next = $target; 
    while ($next.length) 
    { 
     $target = $next; 
     $next = $next.children(); 
    } 
    return $target; 
} 

現在:

$("#SearchHere").deepestDiv().css('color','red') 

enter image description here

http://jsbin.com/kedobuyumo/3/edit

+0

對不起,請不要假設我的div是最後一個。該div內可能還有其他div。謝謝 –

+0

@TheProfiler你想隱藏哪個div? –

0

你應該能夠因爲ID來僅僅通過ID訪問這是一個獨特的頁面。

$('#idLevelN').hide() 

但是,我意識到在實踐中,情況並非總是如此,所以您可能需要使用該類。

$('div.container div.levelN').hide() 
+0

我需要確保我的div只有在class =「container」的div內時纔會被隱藏。否則,我想讓它獨自一人。 –

+0

不起作用...... btw這是一個SharePoint生成的頁面。 –