2014-02-05 43 views
1

我有一個列表,裏面有嵌套列表,並且具有無限級別。添加.last類以便在UL中保留UL和LI

所以HTML的樣子:

<ul class="list-group"> 
    <li class="list-group-item"> 
     <ul class="list-group"> 
      <li class="list-group-item"> 
       <a href="#">Link</a> 
      </li> 
      <li class="list-group-item"> 
       <a href="#">Link</a> 
      </li> 
     </ul> 
    </li> 
    <li class="list-group-item"> 
     <ul class="list-group"> 
      <li class="list-group-item"> 
       <a href="#">Link</a> 
      </li> 
      <li class="list-group-item"> <!-- This should have the class .last --> 
       <a href="#">Last Link</a> 
      </li> 
     </ul> 
    </li> 
</ul> 

最後 'li' 在嵌套 'ul' 應該有一類」。 last'已添加到它。

我當前jQuery是如下:

$('ul.list-group li:last-child').addClass('last'); 

然而,這是廣泛的並捕捉在每個「ul」最近「li」,而不是最後一個「li」發生。

我可以通過某種方式遍歷每個'ul'來檢測大於1的計數器,努力想出正確的邏輯來使用。

回答

3

使用last()拿到最後一個元素在集合

$('ul.list-group li').last().addClass('last'); 

如果你想要的是隻針對嵌套UL李,使用

$('ul.list-group ul.list-group li').last().addClass('last'); 
+0

它在這種情況下也有效嗎? – Prashobh

+0

@prash我不確定這個問題對我來說很模糊 –

+0

對於模糊問題,開發中和列表沒有完全填充的道歉。在這個階段可能跳槍嘗試添加這個類。不過.last現在是我的朋友,所以感謝@dystroy – CLiown

1

這可能會幫助你

$('.list-group-item:last').addClass('last');