Hallo,
per Javascript in einen (unsichtbaren, Javascript-erzeugten) iframe der Reihe nach ein paar HTML-Seiten laden, daraus jeweils den Element-Inhalt eines bestimmten Elements extrahieren und in die eigene Seite kopieren.
Als unproblematisch betrachte ich das Anlegen des iframes sowie das Laden eines Dokuments in diesen iframe.
Auch das Holen der entsprechenden Element-Inhalte sollte kein Problem sein (getElementsByTagName, testen mit className, innerHTML)
innerHTML gibt einem u.U. nicht exakt den Code wieder, aber die genannten Browser sollten es bei regulärem HTML-Code können, möglicherweise tauchen aber einige Attribute zuviel auf.
Ich kann ja nicht davon ausgehen, daß direkt nachdem dem iframe das neue Dokument zugewiesen wurde dieses Dokument auch schon geladen ist - da liegt ja doch eine gewisse Zeitspanne dazwischen. Ich muß also erkennen können, ob das Dokument im iframe bereits geladen wurde.
Nimm den onload-Event des iframe-Elementobjekts. Dieses fungiert quasi als window-Objekt für das Dokument im iframe, daher kommt dort der load-Event an.
Das iframe-Element hat ja leider kein onload-Attribut
Gemäß HTML vielleicht nicht. Hast du aber mal einen load-Handler beim iframe-Elementknotenobjekt registriert? Das sollte funktionieren.
var iframe = document.createElement("iframe");
document.body.appendChild(iframe);
iframe.onload = function (e) { alert("loaded"); };
iframe.src = "test.html";
Zugriff auf das window-Objekt des Dokuments im iframe bekommt man übrigens über contentWindow (proprietär, MSIE und Gecko), direkten Zugriff auf das document-Objekt über iframe.document (MSIE, Opera) oder iframe.contentDocument (DOM 2 HTML, Opera, Gecko).
Mathias