Hi,
diashow_init = window.setInterval("view('" + next + "')", 3000);
next wird hier einmal in den String geschrieben und dann immer wieder aufgerufen.
»»
Wieso wird das immer wieder aufgerufen
Weil du das, was hier passiert, von innen nach aussen betrachten musst:
Zuerst mal wird ein String zusammengebastelt, aus "view('" und dem zu diesem Zeitpunkt aktuellen Inhalt von next und "')" - da kommt meinetwegen sowas wie "view('abc')" heraus.
Anschliessend wird das als erster Parameter an setInterval übergeben - was aus diesem String ein Funktionsobjekt macht: Aufruf von view mit dem Parameter 'abc'.
Und genau letzterer Aufruf wird jetzt alle 3000 Millisekunden wieder ausgeführt.
Ob du irgendwann nach dem setInterval den Wert von next änderst, interessiert jetzt überhaupt niemanden mehr. Die Stelle, wo der String für den ersten Parameter zusammengebastelt wurde, ist genau *ein* Mal ausgewertet worden - und diese Code-Stelle kommt nachher nicht mehr zur Ausführung, also kann ein geänderter Wert von next dort auch überhaupt keinen Einfluss mehr haben.
Arbeite dir mal diesen Artikel durch: Fader-Framework - kleiner Lehrgang zum vernünftigen Schreiben eines JavaScripts
Dort bekommst du vermittelt, wie man so etwas zeitgemäßer umsetzt.
MfG ChrisB
Light travels faster than sound - that's why most people appear bright until you hear them speak.