An der Stelle, wo der erneute zeitverzögerte Aufruf der Funktion stattfindet, sagst du, „rufe die Funktion erneut zeitverzögert auf, wenn ...”
~~~javascript
if ( 100) {
window.setTimeout(function () { fade(step); }, 50);
}
Wenn es bei 100 bzw. 1 ist (also sichtbar), BIS es unsichtbar wird. Nur wie kriegt man das BIS es 0 ist hin?
Ansonsten ist doch die WENN / IF Funktion richtig. Soll ja anfangen, wenn das Bild voll sichtbar ist.