Javascript で円形の画像カルーセルを作成しています。
0 位置のスライドが現在選択されており、[前へ] が押された場合、最後の位置のスライドにジャンプするという意味で、円形である必要があります。最後の位置のスライドが現在選択されている場合、「次へ」を押すと、0 の位置のスライドにジャンプします。
別のプログラムがスライド全体を処理しますが、次のことができます。
- シフト後の現在位置を検出
slide.current
- 最初の位置は 0 - スライドの総数を検出します(ページをリロードするまで変化しません)
slide.items.length
- スライド プログラムが独自の補完機能を完了した後で、独自の関数
nextSlide
と関数を起動するpreviousSlide
slideTo()
スライド APIを使用して、現在選択されているスライドとポインターの位置を手動で変更します- ページの読み込み後に最初に表示されるスライドが、アイテムの総数 (3 ~ n) を 2 で割って切り上げたものであることが自動的に認識されます。
ここに私が持っているものがあります:
var currentSlide = slide.current;
var lastSlide = 'undefined';
function nextSlide(){
currentSlide = slide.current;
if(lastSlide == 'undefined'){
lastSlide = currentSlide - 1;
} else if (lastSlide == 0) {
lastSlide = currentSlide;
} else{
lastSlide = lastSlide + 1;
}
if (lastSlide == currentSlide) {
slide.activate(0);
}
}
function previousSlide(){
currentSlide = slide.current;
if(lastSlide == 'undefined'){
lastSlide = currentSlide + 1;
} else if (lastSlide == slide.items.length - 1) {
lastSlide = currentSlide;
} else{
lastSlide = lastSlide - 1;
}
if (lastSlide == currentSlide) {
slide.activate(sly.items.length - 1);
}
}
previousSlide
呼び出しと呼び出しを混在させると、これは失敗しますnextSlide
。lastSlide
変数が不正になります。