如何获取包含其他元素中某个元素的最后一个的包装集?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何获取包含其他元素中某个元素的最后一个的包装集?相关的知识,希望对你有一定的参考价值。

在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>

我想在每个具有“test”类的div中选择带有“inside”类的最后一个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>

我不知道该怎么做。

答案

你想要的是最后一个子选择器,而不是简单的持久。这将返回其父级中最后一个子元素的每个元素:

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

fiddle example

另一答案

jsFiddle

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

使用可以使用':last'伪类来匹配最后一个元素。这里的第二个参数将搜索与第一个选择器匹配的元素仅限于具有“test”类的div。

以上是关于如何获取包含其他元素中某个元素的最后一个的包装集?的主要内容,如果未能解决你的问题,请参考以下文章

js怎么获取数组里的第一个元素

如何将包装弹性项目显示为最后一行左对齐的空格?

jQuery复习—包装集

css中如何获取dom元素

Jquery

CSS如何选择不包含某个class的元素