私は現在、1つのJクエリスライダーを作成しています.nextをクリックすると右から左にスライドし、prevをクリックすると左から右にスライドします。画像は制限されているため、前の画像が循環的に表示されます。問題は、クリック時の前と次のボタンが正しく機能しないことです。私はそれに対する最善の解決策を見つけることができません。誰かがそれを書くための最良の方法を教えてくれますか? または、スライダープラグインを使用せずにそのようなスライダーを作成する効果的な手法はありますか?
JQuery コード
$(document).ready(function(){
var galW = $('#gallery').width();
var imgN = $('#slider img').length;
$("#slider").width((galW/6)*imgN);
$('#next').click(function(){
var first = $("#slider img").first();
var last = $("#slider img").last();
first.stop().animate({marginLeft : -150},1500,function(){
first.detach().insertAfter(last).css('marginLeft','0px');
});
});
$('#prev').click(function(){
var first = $("#slider img").first();
var last = $("#slider img").last();
last.detach().insertBefore(first).css('marginLeft','-150px');
first.stop().animate({marginLeft : 0},1500);
});
});
HTML コード
<div id="gallery">
<div id="gallery_overflow">
<div id="slider">
<img src="#" width="150px" height="50px"/>
<img src="#" width="150px" height="50px"/>
<img src="#" width="150px" height="50px"/>
<img src="#" width="150px" height="50px"/>
<img src="#" width="150px" height="50px"/>
<img src="#" width="150px" height="50px"/>
<img src="#" width="150px" height="50px"/>
<img src="#" width="150px" height="50px"/>
</div>
</div>
<div id="prev"><img src="left.png" width="40px" height="40px"/></div>
<div id="next"><img src="right.png" width="40px" height="40px"/></div>
</div>
画像は # か所にあります ..