2011-08-16 63 views
1

在jQuery中,我想獲取元素集中某個元素的最後一個。例如,我有這些div有孩子:如何獲得包含其他元素內某個元素的最後一個包裝集

<div class="test"> 
    <div class="inside"> 
    </div> 
    <div class="inside"> 
    </div> 
    <div class="inside"> 
    </div> 
</div> 
<div class="test"> 
    <div class="inside"> 
    </div> 
    <div class="inside"> 
    </div> 
    <div class="inside"> 
    </div> 
</div> 
<div class="test"> 
    <div class="inside"> 
    </div> 
    <div class="inside"> 
    </div> 
    <div class="inside"> 
    </div> 
</div> 

我要選擇具有類「內」,在每類「測試」的div的最後一個div。類似這樣的:

var customWrappedSet; 
$('.test').each(function() 
{ 
    customWrappedSet.add($(this).find('.inside').last()); 
}); 
customWrappedSet.text('hello'); 

這最好是三個元素(每個.test中的最後一個.inside)。結果看起來像這樣:

<div class="test"> 
    <div class="inside"> 
    </div> 
    <div class="inside"> 
    </div> 
    <div class="inside"> 
     hello 
    </div> 
</div> 
<div class="test"> 
    <div class="inside"> 
    </div> 
    <div class="inside"> 
    </div> 
    <div class="inside"> 
     hello 
    </div> 
</div> 
<div class="test"> 
    <div class="inside"> 
    </div> 
    <div class="inside"> 
    </div> 
    <div class="inside"> 
     hello 
    </div> 
</div> 

我不知道該怎麼做。任何幫助表示讚賞。

回答

5

你想要的是最後一個孩子的選擇,而不僅僅是最後一個。這將返回的每一個元素是最後一個子內它的父:

$('.test .inside:last-child'); 

fiddle example

+0

謝謝:) +1,五分鐘後會接受。 – Chev

+0

順便提一下。你幫我找到了我的第一個jQuery插件:[jQuery.coolType](http://jsfiddle.net/Chevex/GSe9U/13/) – Chev

2

jsFiddle

$('div.inside:last', 'div.test'); 

使用可以使用 ':最後一個' 僞類的最後一個元素匹配。此處的第二個參數將搜索與第一個選擇器匹配的元素僅搜索具有「test」類的div。

+0

他希望EVERY .inside即是父。測試的最後一個孩子。看到我的迴應的區別。 – maxedison

+0

而這正是他將用我的代碼得到的。正如我所解釋的,第二個參數的作用範圍是第一個選擇器。檢查控制檯結果在小提琴看到它在行動。 –

+0

是的,沒錯。我正在做一些懶惰的閱讀。出於好奇,使用你所做的那種範圍確實有好處嗎?我認爲我的例子更具語法和更易於編寫。 – maxedison

相關問題