我怎么能知道元素是最后一项

how can I know the element is the last item?

本文关键字:一项 最后 怎么能 元素      更新时间:2024-03-06

例如,我们有

<ul><li></li><li></li>....</ul>

我们不知道这些代码中有多少li标记,现在我引用了其中一个li元素。有没有一种简单的方法可以知道这个引用是否是最后一项?

您可以使用:last-child选择器,并检查元素是否与之匹配:

if( $('li').is(':last-child') ) {
    // ...
}

您应该将上面的'li'选择器替换为对元素的引用。

请注意,替换它是必要的,因为如果匹配集中的任何元素与新选择器匹配,.is()将返回true,所以您只想在特定的列表项上调用它。

$('ul li').each(function() {
   if($(this).is(':last-child')) { 
      // I am the youngest!
   }
});

最有效的方法是在服务器上呈现时为其分配一个last类。

这样,一个简单、廉价、高效的$( this ).hasClass( 'last' )就足够了。

示例:

<ul>
    <li></li>
    <li></li>
    <li></li>
    <li class="last"></li>
</ul>

jQuery:

if ( $( this ).hasClass( 'last' ) ) { // cheap
}

记住:渲染页面的大部分时间都花在客户端上,效率越高越好

$('ul li').on('click', function() {
    console.log($(this).is(':last-child'));
});