Junet: SetTimeout - wird nur einmal ausgeführt

Hallo an Alle,

HILFE!!!

Habe mich mal ein wenig an JavaScript versucht, soweit so gut,aber warum klappt das nur einmal?

Habe versucht einen Link bei MouseOut ausblenden zu lassen - sprich von grün nach weiß - einmal funktioniert das auch wunderbar aber es ist keine Wiederholung möglich - hat einer ne Idee wo mein Denkfehler  ist? Wäre wirklich nett.

<script type="text/javascript">

var i = 0;
var merke = "";
var newcolor = new Array('96bf0d','96bf0d','a0c525','abcc3d','bbd561','c0d96e','d0e292','dfecb6','eaf2cf','f4f8e6','ffffff');
function effekt(menu){
   if(i < 1){
      merke = menu;
   }
   i++;
   document.getElementById(merke).style.color = newcolor[i];
   aktiv = window.setTimeout("effekt(merke)", 150);
   if(i >= 10){
     window.clearTimeout(aktiv);
    }
}

</script>

Vielen lieben Dank Junet

  1. Hallo,

    Habe versucht einen Link bei MouseOut ausblenden zu lassen - sprich von grün nach weiß - einmal funktioniert das auch wunderbar aber es ist keine Wiederholung möglich - hat einer ne Idee wo mein Denkfehler  ist?

    was passiert denn mit deiner Zählvariablen i, nachdem der Zauber einmal durchgelaufen ist? Genau, sie bleibt auf dem Wert 10 stehen.

    Hilft dir das als Denkanstoß? :-)

    So long,
     Martin

    --
    TEAM: Toll, Ein Anderer Macht's.
  2. Hallo,

    var newcolor = new Array('96bf0d','96bf0d','a0c525','abcc3d','bbd561','c0d96e','d0e292','dfecb6','eaf2cf','f4f8e6','ffffff');

    document.getElementById(merke).style.color = newcolor[i];

    sieht nicht so aus, dass du gültige  Farbwerte verwendest.

    document.getElementById(merke).style.color = "#"+newcolor[i];

    Gruß plan_B

    --
         *®*´¯`·.¸¸.·