0

次のリストがあるとします。

<ul>
  <li><a href="#">Link 1</a></li>
  <li><a href="#">Link 2</a></li>
  <li><a href="#">Link 3</a></li>
  <li><a href="#">Link 4 (different action)</a></li>
</ul>

マークアップを追加せずに、このリストの最後の項目に別のクリック アクションを割り当てることは可能ですか? つまり、最後のアイテムなどに class="last" などを追加する必要はありません

4

4 に答える 4

4

最後の項目のみのクリック イベント ハンドラーを意味する場合:

$("ul > li:last-child").click(function() {
  //
});

最後のクリック ハンドラーでの動作をさせたい場合は、次のようにします。

$("li").click(function() {
  if ($(this).is(":last-child")) {
    // do something
  } else {
    // do something else
  }
});
于 2009-06-08T13:09:23.680 に答える
2

これを試してください:

$('ul li a').slice(-1).click(function () {
   // Your general click handler here (All elements except last)
});

$('ul li:last-child a').click(function () {
   // Your more specific click handler here
});
于 2009-06-08T13:12:28.120 に答える
1

:last セレクターを使用できます。

 $(".yourUL li:last a").click(...);

このようにして、選択した UL の最後の li にクリック イベント ハンドラーを追加します。

于 2009-06-08T13:10:09.667 に答える
0

:last-child セレクターを使用するだけです。

$('ul li:last-child').click(myFunc);

于 2009-06-08T13:11:07.390 に答える