7つの要素がクリックされたときにのみアニメーションが必要です。ここでは、コードがあるが、それは動作しません:。複数の要素がクリックされたときの機能
var animp5 = function() {
var i = 0;
$("#ans1_p5").on('click', function() {
i = i + 1;
$("#ans1_p5").fadeOut(800);
$("#correct1_p5").fadeIn(1000);
});
$("#ans2_p5").on('click', function() {
i = i + 1;
$("#ans2_p5").fadeOut(800);
$("#correct2_p5").fadeIn(1000);
});
$("#ans3_p5").on('click', function() {
i = i + 1;
$("#ans3_p5").fadeOut(800);
$("#correct3_p5").fadeIn(1000);
});
$("#ans5_p5").on('click', function() {
i = i + 1;
$("#ans5_p5").fadeOut(800);
$("#correct4_p5").fadeIn(1000);
});
$("#ans7_p5").on('click', function() {
i = i + 1;
$("#ans7_p5").fadeOut(800);
$("#correct5_p5").fadeIn(1000);
});
$("#ans9_p5").on('click', function() {
i = i + 1;
$("#ans9_p5").fadeOut(800);
$("#correct6_p5").fadeIn(1000);
});
$("#ans10_p5").on('click', function() {
i = i + 1;
$("#ans10_p5").fadeOut(800);
$("#correct7_p5").fadeIn(1000);
});
if (i === 7) {
$("#ans4").fadeOut(800);
$("#ans6").fadeOut(800);
$("#ans8").fadeOut(800);
$("#wrong1_p5").fadeIn(1000);
$("#wrong2_p5").fadeIn(1000);
$("#wrong3_p5").fadeIn(1000);
$("#cor_p5").fadeIn(1000);
}
};
私は.data('clicked')
またはのように(他のソリューションを試してみましたが、彼らはどちらか動作しませんでした
idに基づいた大量の要素にリスナーを置くのではなく、クラス名に基づいて単一のリスナーを使用する方が良いでしょう。何かがクリックされた場合、クラスを切り替えることができますその要素のそのようなものを "クリック"したり、何か... $( ".clicked")を数えます。 – smerny
あなたのdomを共有すると、何が起こっているのかを簡単に伝えることができます – smerny