[Javascript] Jak przez setTimeout wykonywać obroty pętli?

Witam.

Mam problem z setTimeout. Męczę się z tym już bardzo dużo czasu i nadal nic.

Chodzi mi konkretnie o to, aby każdy obrót pętli występował co jakiś czas i tym samym posuwając mój pseudo pasek ładowania do przodu.

Ten pasek ma 200 pikseli.

Oto kod:

function dzialaj() {

 var wewn = document.getElementById("wewn");

	for (var x=0; x<199; x++) {

		wewn.style.width = x;

                setTimeout("dzialaj()", 100);

        }

 }

Proszę o pomoc.

Nie powtarzaj w pętli tego samego elementu, bo to nie ma sensu. Wywołaj

działaj(0);

var wewn = document.getElementById("wewn");


function dzialaj(x) {

      if(x<199){

        wewn.style.width = x;

        setTimeout("dzialaj(x++)", 100);

      }

}

Dzięki. Właściwie to zależało mi na pętli, żeby już sobie z nią radzić na przyszłość, ale to chyba też jest ok.

To też jest pętla, w wywołaniu dajesz początkowy x, w if masz warunek a w settimeout krok :stuck_out_tongue:

Przepraszam, chodziło mi konkretnie o pętle for. Miałem z nią problemy.