0
私は生成したランダム配列の数字の順番でサウンドを再生したり点灯させるボタンをプログラムしようとしています。それらを明るくするために元の色に戻すよりも明るい色です。時にはこれが機能し、ボタンの色が元の色に戻らなくなってしまい、なぜ私がそのパターンを見つけることができないのか分からない時があります。私のコードで間違っていることを誰でも見ることができますか? JQuery documentation for the .queue()
functionループが終了しない時間があります
var turn = 19;
var b = 0;
function flash(button, light) {
button.addClass(light).delay(500).queue(function(){button.removeClass(light);})
}
function lightUp() {
switch (game[b]) {
case 1:
one.play();
flash($("#1"),"onelit");
break;
case 2:
two.play();
flash($("#2"),"twolit");
break;
case 3:
three.play();
flash($("#3"),"threelit");
break;
case 4:
four.play();
flash($("#4"),"fourlit");
break;
}
b++;
if (b < turn) {
setTimeout(lightUp, 2000);
}
}
OK遅延を1回だけ実行した後、2回目に各ボタンが点灯しても元の色に戻りません。 – Keli
問題は、あなたが ' ) '、[この回答](http://stackoverflow.com/a/2510255/859640)のように。ところで、あなたは本当にそのようなswitch文を使わないでください。ここにはいくつかのアイディアを与えるかもしれない[jsfiddle](https://jsfiddle.net/31bb0azk/1/)があります。 –
ありがとうございます()解決しました!そのようなswitch文はちょうどclunkyですか? – Keli