1

たとえば、

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

これらのコードに含まれるliタグの数はわかりません。現在、これらのli要素の1つへの参照があります。この参照が最後の項目であるかどうかを知る簡単な方法はありますか?

4

4 に答える 4

3

:last-childセレクターを使用して、要素がそれに一致するかどうかを確認できます。

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

'li'上記のセレクターを要素への参照に置き換える必要があります。

一致したセット内の要素のいずれか.is()が新しいセレクターと一致する場合はtrueを返すため、これを置き換える必要があることに注意してください。したがって、実際には、特定のリストアイテムでのみ呼び出す必要があります。

于 2012-07-27T07:56:32.167 に答える
1
$('ul li').each(function() {
   if($(this).is(':last-child')) { 
      // I am the youngest!
   }
});
于 2012-07-27T07:57:48.690 に答える
1

最も効率的なlastのは、サーバーでレンダリングするときにクラスを割り当てることです。

このように、シンプルで安価で効率的な$( this ).hasClass( 'last' )もので十分です。

例:

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

jQuery:

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

覚えておいてください:ページをレンダリングするためのほとんどの時間はクライアントに費やされます、あなたがより効率的であるほど、より良いです。

于 2012-07-27T07:59:29.360 に答える
0
$('ul li').on('click', function() {
    console.log($(this).is(':last-child'));
});
于 2012-07-27T07:59:47.893 に答える