したがって、このマークアップを使用して単純なスライドショー コントロールを作成しています。
<div class="previous"> </div>
<div class="next"> </div>
<div class="gallery"> </div>
<div class="image-0"> </div>
<div class="image-1"> </div>
<div class="image-2"> </div>
<div class="image-3 active"> </div>
<div class="image-8"> </div>
<div class="image-9"> </div>
<div class="image-10"> </div>
<div class="image-11"> </div>
</div>
そして、私は次のようにjQueryを使用してナビゲートしようとしています:
$('.next').click(function() {
$('.active').next().addClass('active');
$('.active').first().removeClass('active');
});
$('.previous').click(function() {
$('.active').prev().addClass('active');
$('.active').last().removeClass('active');
});
そのため、最初の jQuery ブロックは期待どおりに機能し、最初にactive
クラスを次の div に割り当ててから、最初の div から削除します。2 番目のブロックは逆の方法で行う必要がありますが、前の項目にクラスを追加した後、最後の項目からクラスを削除しません。
私は間違った側からこの問題に取り組んでいますか? または、first() 関数と last() 関数の動作が異なるだけですか? jqueryのドキュメントからわかることから、これは機能するはずです。