問題:
私は現在機能しているスクリプトを持っています。それは基本的に「sponsor-」のクラスでリストアイテムを調べ、設定された速度でそれらを循環します。
したがって、私のhtmlは次のようになります。
<ul>
<li class="sponsor-1">This is sponsor one</li>
<li class="sponsor-2">This is sponsor two</li>
<li class="sponsor-3">This is sponsor three</li>
</ul>
動作するjQuery:
$(document).ready(function() {
var divs = $('li[class^="sponsor-"]').hide(),
i = 0;
(function cycle() {
divs.eq(i).fadeIn(400)
.delay(1000)
.fadeOut(400, cycle);
i = ++i % divs.length;
})();
});
これまではすべて問題ありませんが、同じ関数にリスト項目を追加する方法を知る必要があります。'fact-'のクラスを含む別のリストがあり、これも循環させたいと思います。これは間違いなくひどく間違っていますが、これは私が試したものです。
次に試したこと(機能しない)
$(document).ready(function() {
var sponsors = $('li[class^="sponsor-"]').hide(),
var facts = $('li[class^="fact-"]').hide(),
i = 0;
(function cycle() {
sponsors.eq(i).fadeIn(400),
facts.eq(i).fadeIn(400)
.delay(1000)
.fadeOut(400, cycle);
i = ++i % sponsors.length;
i = ++i % facts.length;
})();
});
これは機能していません。同じ関数にさらに追加して、他のさまざまなサイクルリストをターゲットにできるようにするためのヘルプが必要です。
明確さのための編集
私は最初のサイクルのスポンサー、次に事実へのサイクルを探していません。2つのサイクルを同時に実行したいと思います。ご迷惑をおかけして申し訳ありません。