Hallo molily!
Ich habe mir das Skript auch drei Mal ansehen müssen bevor ich den Fehler gefunden hatte. Vorsicht bei Java & JavaScript mit nicht explizit als Variablen deklarierten Variablen bein Rekusion.
Was war nu falsch????
for (<b>var</b> i=0; i<knoten.childNodes.length; i++) {
knotenneu=knoten.childNodes[i];
if (objektindex<max_objekte) liste_unterknoten(knotenneu); // Rekursion
}
Es muß ein "var" vor die Deklaration dem temp Variable i. Wenn man das nicht macht, dann der der Interpreter ärger wären der Rekusion die Variable ein-eindeutig einer Ebene zuzuordnen [die Variable i zählt 0 2 0 2 0 2 0 2 am Anfang mal ne 1, aber das ist eben die Startsituation -> daraus kann man nicht auf das Rekursionsverhalten schließen!!!]
Zu Deiner zweiten Frage: Wie so nicht document.write()???
Kannst Du schon, aber ich glaube, dann muß das Skript nach dem Body kommen. Ein Aufruf von document.write zerstört das aktuelle Dokument und macht es wieder zum Schreiben bereit. Wenn also erst das Skript kommt, dann lese ich den ersten Knoten, denn wird das Dokument weggeschmissen ==> dann gibts nur noch den Knoten, den DU eben geschrieben hast, will heißen: ENDLOSSCHLIEFE...
Ich hoffe mal, daß ich Dir geholfen habe. Bei dem letzten Punkt bin ich mir nicht 100%ig sicher, aber sollte stimmen. Dein Skipt hat bei mir nach der Modif. jendenfalls funktioniert.
GVT