ChrisB: Aber das geht doch auch nicht?

Beitrag lesen

Hi,

Und bei Null kommt es wann an?
Wenn es bei Null ist? Oder wenn es immer weiter absinkt oder unsichtbar ist? Wiess grad nicht, worauf du mich hinweisen möchtest.

Darauf, dass der Wert von opacity von step abhängt.
Also bietet sich der aktuelle Wert von step an, um die Entscheidung zu treffen, ob ein erneuter zeitverzögerter Aufruf erfolgen soll oder nicht.

step = step - 2; // Der Wert wird immer um -2 verringert...

if ( 100) {
                window.setTimeout(function () { fade(step); }, 50); // ...in dieser Zeit, wenn Opacity in dem Fall bei 100 bzw 1 ist (wird Opacity innerhalb von 50 Zeiteinheiten auf 0 runtergerechnet)

Nein, die 50 bedeutet, dass der nächste Aufruf in 50 Millisekunden stattfindet.  
  

> Wo ist denn da überhaupt eine Schleife und warum entsteht eine?  
  
Weil die Funktion sich immer wieder neu selber aufruft.  
(Das soll sie ja auch bis zu einem bestimmten Zeitpunkt.)  
  

> Es wird ja bis auf 0 runtergrechnet und ich bin happy, warum dann immer wieder?  
  
Weil deine Funktion nicht aufhört, sich selbst aufzurufen, wenn das Bild komplett durchsichtig ist.  
(Und dann fängt sie wieder von vorne an, weil sie den Wert von step dann ja selber wieder auf 100 setzt.)  
  
MfG ChrisB  
  

-- 
“Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]