私は学校のプロジェクトに取り組んでおり、あなたの助けが必要です。私が作ったのは、一連の div を通る無限ループです。3 つの div と 3 つのリンクがあります。これらのリンクをクリックすると、すぐに適切な div が表示されます (その後、すべての div が表示され、再びループします)。問題は、クリックしたときに遅延が発生することです。これは望ましくありません...リンクをクリックしたときにdivがすぐに雪が降る可能性はありますか? 他の簡単で複雑でない方法はありますか? 必要なコードを変更/追加していただけますか? 前もって感謝します。
<ul id="cyclelist">
<li><div>Div 1</div></li>
<li><div>Div 2</div></li>
<li><div>Div 3</div></li>
</ul>
</br></br>
<a href="#" class="className1">link1</a><br/>
<a href="#" class="className2">link2</a><br/>
<a href="#" class="className3">link3</a><br/>
var j=0;
function changeOnClick()
{
$("a").click(function(e) {
e.preventDefault();
if ($(this).hasClass('className1')) {
j=-1;
}
else if ($(this).hasClass('className2')) {
j=0;
}
else if ($(this).hasClass('className3')) {
j=1;
}
});
}
var delay = 2000;
function cycle(){
var jmax = $("ul#cyclelist li").length -1;
changeOnClick();
$("ul#cyclelist li:eq(" + j + ")")
.animate({"opacity" : "1"} ,400)
.animate({"opacity" : "1"}, delay)
.animate({"opacity" : "0"}, 400, function(){
(j == jmax) ? j=0 : j++;
cycle();
});
};
cycle();