Morten: URL aus Inframe auslesen bei externen Server?

Beitrag lesen

Hallo Morten

also erstmal: es gibt in (X)HTML keinen inFrame, nur iframe.

Ich weis. 'inFrame' ist nur ein Name/ID :
<iframe id="imFrame" name="imFrame" src="">

Zum Problem: Wenn ich das jetzt richtig verstanden habe, dann liegt ein Problem darin, dass du die Adresse nicht in die Adresszeile schreiben kannst.

Nein das eigentliche Problem ist es die aktuelle Adresse eines Iframe 'auszulesen' und zwar von außerhalb des Iframes.
Mein Code funktioniert nur dann wenn der Inhalt des Iframes eine Seite ist die auf dem selben Server liegt. Sobald im Iframe eine andere Seite angezeigt wird kann ich die URL des Iframes nicht mehr auslesen.

Das Weiterleiten mit location.href=ziel stellt ja kein Problem dar. Die Variante mit getElementsByTagName habe ich ausprobiert, funktioniert aber auch nicht. Da es anscheinend eine Beschränkung seitens eines Javascript Sicherheitskonzeptes gibt was verhindern  will das ich Daten zB aus Formularen auslesen kann.

Bei mir funktionieren die drei von der W3C bereitgestellten Varianten, um mittels JavaScript auf HTML-Elemente zuzugreifen, tadellos. Du hast es vermutlich auch schon mit getElementById und getElementsByName versucht? Wenn keins davon geht, dann weiß ich auch nicht weiter.

Besorge dir am besten die Web Developer Tools für den Firefox (einfach genanntes bei Google eingeben). Darin ist eine JavaScript-Konsole inbegriffen, die dich auf Fehler hinweist.

Ich habe nun im HTML-Dokument folgendes gespeichert:
<iframe id="iframe" src="www.example.com" onload="leite_weiter();">
Wenn ich im Internet-Explorer mittels
function leite_weiter() {
 var ziel = document.all('iframe').src;
 location.href = ziel;
}
weiterleite funktioniert das tadellos.

Und im Firefox mittels:
function leite_weiter() {
 var ziel = document.getElementById('iframe').src;
 location.href = ziel;
}
auch. :)

Ich denke, wenn du es so machst, sollte es funktionieren :)

Gruß,
Morten