0

次の HTML レイアウトがあるとします。

ul
  li
    div.foo
    div.foo
    div.foo
    div.bar  
  li
    div.foo
    div.foo
    div.foo
    div.foo
    div.foo
  li
    div.foo
    div.foo

CSS は次のようになります。

.foo {display: none;}

それぞれの最後の要素を にしたいと思いliますdisplay: block;

現在、私は持っています:

$('li .foo:last').show();

しかし、これは各要素div.fooの最後ではなく最後のものを表示するだけです。div.fooli

4

3 に答える 3

1

次のようにする必要があります。

$('li .foo:last-child').show();

:lastコレクションの最後のものだけを取得する特別な jQuery セレクターです。

于 2013-07-31T19:51:21.117 に答える
0

を使用したadeneoの回答に加えて、代替および拡張バージョンeach()

$('li').each(function() {
  $(this).find('div.foo:last').show();
});
于 2013-07-31T20:04:49.380 に答える