ここで何をしなければならないのか理解できないようです。私は簡単な画像のスライドショーを作成しようとしていますが、それを機能させる方法を見つけようとしています。forループを実行しておらず、理由がわかりません。これが私のコードのフィドルです:http://jsfiddle.net/xnEGt/。
質問する
399 次
1 に答える
1
ここ: http: //jsfiddle.net/xnEGt/6/
何が悪かった:
- 画像は最初にCSSで非表示にする必要があり、最初の画像のみが表示されます
- forループを使用すると、すべての画像が1回だけ表示されます。.delay()はループに影響を与えないため、すべての反復が一度に行われることに注意してください
- これは、setTimeoutを使用した再帰的な実装を使用して解決できます。
.get(0)
.get(1)
セレクターも間違っていたので、代わりに使用しnth-child(i)
てください。var slideCount = $('.slider div.slide').length; nextPic(0); function nextPic(i){ var next = (i+1)%(slideCount+1); $('.slider div:nth-child('+i+')').fadeOut(100); $('.slider div:nth-child('+next+')').fadeIn(100); setTimeout(function(){nextPic(next);},1000); }
または、
.get()
セレクターを使用したよりコンパクトな実装:http: //jsfiddle.net/xnEGt/7/
于 2012-07-03T07:15:13.310 に答える