Autor | Zpráva | ||
---|---|---|---|
kenny456 Profil |
zdravím, chtěl bych vypsat čísla od 1 do 9, ale tak, aby se mezi vypsáním každého čísla třeba vteřinu čekalo. Napadlo mě toto
for (var i=1; i < 10; i++) { datum = new Date(); with (datum){ time1 = getSeconds(); } do { datum2 = new Date(); with(datum2) { time2 = getSeconds(); } } while((time1 + 1) > time2); document.write('<br>' + i); //alert(i); } ale to bohužel nefunguje a čísla se zobrazí až všechny najednou po skončení celého skriptu. Jen když tam nechám ten alert, tak se zobrazí postupně vždy s vyskakujícím alertem. Existuje v Javascriptu neco jako treba v PHP funkce ob_flush() a flush() ? Moderátor Chamurappi: Vkládej prosím kódy mezi značky [>pre] a [>/pre] (stačí kliknout na ).
|
||
Radek9 Profil |
#2 · Zasláno: 7. 12. 2011, 14:40:25
kenny456:
Jsou tam přímo funkce pro čekání. Například setInterval nebo setTimeout. Tyhle prasárničky tam vůbec nedávej. |
||
kenny456 Profil |
#3 · Zasláno: 7. 12. 2011, 14:59:41
Radek9:
o těch funkcích samozřejmě vím, ale nenapadá mě, jak je v tomto případě použít, protože to vždycky čeká, než skončí celej cyklus for a v tom já to potřebuju. |
||
Chamurappi Profil |
#4 · Zasláno: 7. 12. 2011, 15:03:01
Reaguji na kennyho456:
Můžeš v cyklu nastavit několik setTimeout ů na různou dobu.
Nebo použít setInterval a uvnitř opakované funkce doprogramovat zarážku s clearInterval .
|
||
kenny456 Profil |
#5 · Zasláno: 7. 12. 2011, 16:00:07
Chamurappi:
nějak se mi to pořád nedaří. nemohl bys to prosím ukázat na tom mém příkladu? |
||
_es Profil |
#6 · Zasláno: 8. 12. 2011, 08:37:40 · Upravil/a: _es
|
||
kenny456 Profil |
#7 · Zasláno: 8. 12. 2011, 17:46:48
díky za rady, už jsem to předělal a vyřešil pomocí setInterval a setTimeout
|
||
Časová prodleva: 12 let
|
0