初心者はこちら。私はいくつかのリストアイテムを持っています。各リストアイテムに「.go」のクラスを一度に1つずつ追加し、事前に決められた時間のブロックで区切る必要があります。(時間の各ブロックは異なる期間になります)。
例えば:
- スクリプトは最初の(li)に「.go」クラスを追加します
- '.go'クラスはその(li)を正確に4.5秒間保持します。
- 4.5秒が経過すると、スクリプトは現在のリストアイテムから「.go」クラスを削除します
- スクリプトは次の(li)に移動し、「。go」クラスを追加します
- '.go'クラスはこの(li)を1.5秒間保持します。
- 1.5秒が経過すると、スクリプトは現在のリストアイテムから「.go」クラスを削除します
- そして、すべてのリストアイテムを循環するまで、このサイクルが繰り返されます
私が取り組んでいるスクリプトが機能しません。すべてのクラスを(li)に即座に追加します。そして、それらは異なる間隔でフェードアウトします。むしろ、異なる間隔でクラスを追加する必要があります。次に例を示します:http://jsfiddle.net/bM6uY/8/
<ul>
<li>hello</li>
<li>World!</li>
<li>Foo</li>
<li>Bar</li>
</ul>
$(function() {
$('ul li:nth-child(1)').addClass("go")
.delay(4500)
.queue(function() {
$(this).removeClass("go");
$(this).dequeue();
});
$('ul li:nth-child(2)').addClass("go")
.delay(1500)
.queue(function() {
$(this).removeClass("go");
$(this).dequeue();
});
$('ul li:nth-child(3)').addClass("go")
.delay(500)
.queue(function() {
$(this).removeClass("go");
$(this).dequeue();
});
$('ul li:nth-child(4)').addClass("go")
.delay(5000)
.queue(function() {
$(this).removeClass("go");
$(this).dequeue();
});
});