Andreas Bierhals: "too much recursion"

Beitrag lesen

Moin,

function animateObj () {

»»  MachIrgendWas_wasichgeradegekillthab();
»»  setTimeout( eval("this.Animate();"), this.Interval );

}  
wobei gilt: "this.Animate = animateObj;". Das

Das Problem ist wohl die Zeile mit setTimeout... Normalerweise übergibt man setTimeout einen String, der den Funktionsaufruf enthält. So wie Du es gemacht hast, mit setTimeout(eval(<String>),...) wird die Funktion aber schon aufgerufen, *bevor* sie als Parameter in setTimeout eingeht. Da es sich um die selbige Funktion handelt, gibt es natürlich eine Endlosrekursion.
Daher... warum nicht einfach

setTimeout("this.Animate()", this.interval);

?

Viele Grüße

Andreas