Html in iframe laden, dann mit while auslesen, funktioniert nich
Carlos
- javascript
0 EKKi
Hallo,
das ist mein erster Beitrag. Ich hab schon sehr viel hier drin gelesen, und dies hat mir auch immer weitergeholfen, aber jetzt komm ich einfach nicht weiter.
Folgendes: Habe zwei(oder mehr) Seiten, die jeweils ein, oder mehrere div mit ClassName (news) haben, die Kindknoten sehen so aus: A #text BR
Wichtig für mich ist der text, den ich zerlege und dann weiter verarbeite.
hier der Code in test.html. Aufruf des iframes, + der Funktion die das auslesen des Textes machen soll.
function test(){
var iframe = document.createElement("iframe");
document.body.appendChild(iframe);
iframe.onload = function e(){alert("geladen");test2();};
iframe.src = "test2.html";
iframe.id = "abc";
}
Funktion Test2.
function test2(){
var igor = document.getElementsByTagName("iframe");
var edi = igor[igor.length - 1].contentDocument.getElementsByClassName("news");
for (h=0; h<edi.length; h++) {
var Knoten = edi[h].firstChild;
while (Knoten != null) {
sebi = Knoten.nodeName;
if (sebi == "#text") { // hier wird dann der text zerlegt
}
Knoten = Knoten.nextSibling;
}
}
alert(Ergebnis);
}
Test2.html sieht ungefähr so aus:
<div class="news">
<a href="xyz.html" target="_blank">xyz</a> ist fuer M von A zu B<br /><br />
<a href="xyr.html" target="_blank">xyr</a> ist fuer L von C zu D<br /><br />
<a href="xya.html" target="_blank">xya</a> ist fuer V von D zu A<br /><br />
</div>
Also ich kann mir die length sowohl von "igor", als auch "edi" ausgeben lassen, aber das while läuft einfach nicht durch. Des Weiteren zeigt "sebi" beim Anzeigen, sofort "#text" und nicht wie erwartet "A".
Wenn ich das ganze Script in der Test.html laufen lasse funktioniert es einwandfrei.
So vielleicht, kann mir jemand helfen, dass ich die Inhalte der Seite, dann benutzen und alles auslesen kann?
Vielen Dank!
Mahlzeit Carlos,
<div class="news">
<a href="xyz.html" target="_blank">xyz</a> ist fuer M von A zu B<br /><br />
<a href="xyr.html" target="_blank">xyr</a> ist fuer L von C zu D<br /><br />
<a href="xya.html" target="_blank">xya</a> ist fuer V von D zu A<br /><br />
</div>
Frei nach wahsaga: "Ich möchte eine Liste sein, bitte bitte lass mich ein <ul> sein!"
Dann sollte es anschließend auch einfacher sein, auf die einzelnen News-Items zuzugreifen.
MfG,
EKKi