単純なことで悩んでいます。
クリックすると、アニメーションが開始されるdivがあります(画像が変化し、アニメーションgifをシミュレートする無限ループ)。
しかし、他の div をクリックすると、最初の div を停止して他のアニメーションだけを開始する必要があり、これがすべてのアニメーションに続きます (合計で 8 になります)。
以下は、1 つの画像ループのコードです。
var t1;
var t2;
var anim1 = new Array ('img/testes2/anim1_1.png','img/testes2/anim1_2.png');
var anim2 = new Array ('img/testes2/anim2_1.png','img/testes2/anim2_2.png');
var index = 1;
var verifica1 = 0;
var verifica2 = 0;
function rotateImage1(){
$('#imagemPrinc').fadeOut(0, function(){
$(this).attr('src', anim1[index]);
$(this).fadeIn(0, function(){
if (index == anim1.length-1){
index = 0;
}
else{
index++;
}
});
});
return false;
}
function stopTimer1(){
if(verifica1 = 1){
clearInterval(t2);
}
}
function muda1(){
if (verifica1 = 1){
//stopTimer2();
//$('#bgImagem').css({'background-image':'url(img/testes2/anim1_1.png)'});
t1 = setInterval(rotateImage1,500);
}
}
2 番目のアニメーションの同じ関数。verifica var、および stopTimer 関数、私は 1 つの停止を作成しようとしましたが、他の再生だけが機能していないようです。そのため、コードにコメントが付けられています。
実行中のコードを簡単に確認できるので、それを--- ここに--- クリック可能な div は、それらの 2 つの赤い四角です。
誰か助けてください!?
ありがとう!