jsコードは次のとおりです。
var index=0;
function reset(){
for(var i=0;i<count+2;i++){
$(imgs[i]).css("left",width*(i-1-index));
}
}
reset();
//$(".dcCarousel").swipeleft(function(){
$("#left").click(function(){
index = index+1;
for(var i=0;i<count+2;i++){
$(imgs[i]).animate({"left":width*(i-1-index)}, complete=function(){
if(index>=count) {
index = 0;
//$(this).delay(0,reset);
reset();
}
});
}
});
初めてリセットが呼び出されて実行されると、左の属性に正しい値が割り当てられます。しかし、animate() の完全なハンドラーで呼び出すと、左の属性値はアニメーションの後と同じです。どうしてこれなの?そして、これを解決する方法は?
ところで、私が実装しているのは循環カルーセルです。頭と尾の画像を複製し、画像の最後と最初に追加します。最後までスクロールしてアニメーションが終了したら、css属性を変更して最初の画像を表示します。このアプローチに問題はありますか?
他のカルーセル ウィジェットを提案しないでください。自分で作成する必要があります。ありがとう!