Javascript timing
Helló, 1 kockapoker progit próbálok csinálni, és a dobásnál szeretném ha "animációval" 1 secenként váltaná a képeket, így néz ki a kód: És vmiért nem müködik, azt irja ki a hibakonzolba h a currDice nincs definiálva, hogy lehetne ezt megoldani?köszi
■
function roll() {
for (var i = 0 ; i<5 ; i++) {
first_Roll(i);
}
}
function first_Roll(thisDice) {
var currDice = "dice" + thisDice;
var t = setTimeout("document.getElementById(currDice).src = '_img/_dices/roll.jpg'",1000);
}
Closure-ral
setTimeout
-ban megadott kód nem afirst_Roll
hatókörében fog lefutni, így nem lesz hozzáférése a függvényben deklarált változóhoz. Más megfontolás miatt is szerencsésebb asetTimeout
-nak névtelen függvénnyel átadni az időzítendó kódot. Valahogy így:köszi szépen igy müködik!