1

次の HTMl 構造がありますが、これは変更できません。

<div class="X">
    <ul>
        <li><a><img></a></li>
        <li><a><img></a></li>
        <li><a><img></a></li>
        <li><a><img></a></li>
        <li><a><img></a></li>
        <li><a><img></a></li>
        <li><a><img></a></li>
        <li><a><img></a></li>
        <li><a><img></a></li>
        <li><a><img></a></li>
    </ul>
</div>

li アイテムの数は異なります。後ろから n 番目の要素を選択して、img src を変更したいと思います。

これは私がこれまでに持っているものです:

$('div.X').find('img').css('background-color', 'red');

.find の結果をループしてから、最後の n 番目の要素を何らかの方法で選択する方法が必要です。nth-child() セレクターを使用できるように、どうにかしてリストを逆にする必要があると考えていました。

他にもさまざまな nth 関連の質問を見つけましたが、これを釘付けにする方法を理解できませんでした。

どんな助けでも大歓迎です。

4

2 に答える 2

0

どうぞ... http://jsfiddle.net/bYaRx/

私は実装で少し船外に出たかもしれません。私は仕事で退屈しています。正しい img タグを取得するための関連する jQuery は次のとおりです。

var $img = $('.X img');
$img.filter(':eq('+($img .length - (n+1))+')');
于 2012-09-12T10:26:59.630 に答える
0
$('div.X img:eq(' + ($('div.X img').length - n) + ')')

あなたが望むバックの数はどこnにありますか。

:eq()私はnotを使用したことに注意してください:nth-child()-それらは同じではありません。

注 2: ここでオフバイワン エラーが発生する可能性があるため、必ずテストしてください。

于 2012-09-12T08:31:41.120 に答える