Liebe/-r Javascript Experte/-in,
Hätte da eine Anfängerfrage.
Ich möchte den Wert der ‚src‘-Eigenschaft aus einem IFrame über Javascript in einem ‚alert‘-Fenster ausgeben lassen.
Habe schon mit ‚GetElementById‘ und Ähnlichem rumexperimentiert, Bekomms nur leider nich hin den Wert auszulesen.
Hier mal der Code:
alert(document.GetElementById(‚if1‘).src);
Wäre dankbar wenn mir da jemand nen Tip geben könnte.
Mit freundlichem Gruß
Daniel…
Dass Dein Script nicht funktioniert hat drei Gründe:
1.) In JavaScript zählt die Groß- und Kleinschreibung. Deshalb ist „document.GetElementById()“ falsch, es muss „document.getElementById()“ sein.
2.) Dein IFrame-Anfangs-Tag ist nicht geschlossen, deshalb existiert das Element womöglich nicht im DOM. Also muss es " " sein.
3.) Der Punkt ist wohl der wichtigste, da ist es nicht so leicht drauf zu kommen:
Dein Browser fängt an das JavaScript abzuarbeiten bevor das Dokument geladen ist.
Deshalb findet er das Element mit der ID „if1“ nicht. Es gibt in JavaScript eine Möglichkeit das Problem zu umschiffen:
window.onload() wird immer ausgeführt sobald alles geladen ist, somit also auch Dein Script. Ich hab es im FireFox getestet, da funktioniert es.
Ansonsten solltest Du Dir mal JQuery anschauen, damit lässt einfach arbeiten und hat auch den Vorteil dass Du Dir keine Gedanken über Browser und deren Versionen machen musst.
Ich benutzte JQuery für eigentlich alles außer ganz einfache 2-Zeiler.
Trotzdem kann es nicht schaden sich mit JavaScript vertraut zu machen. Viel Spaß noch.
Danke für die schnelle Antwort. War wirklich bloß die Groß/Kleinschreibung. Bin fast verzweifelt.
Naja - so`n dummer Fehler passiert mir bestimmt kein zweies Mal.
Hey,
Danke für die schnellen Antworten. War wirklich nur n simples Groß/Kleinschreibeproblem.
Hätt ich eigentlich selber drauf kommen müssen.
Sowas trifft.
wenn der Inhalt dieses IFRAME-Elements nicht von derselben Domain stammt wie jener der den IFRAME einbindenden Seite, hast du da aufgrund der Same-Origin-Policy der Browser keine Chance. Das ist so aus Sicherheitsgründen.
function init() {
alert("SRC: "+document.getElementById("if1").src);
}
Aber man in dem iFrame eine neue Seite aufruft lässt sich die SRC-Eigenschaft nicht als Adresse verwenden, da die SRC-Eigenschaft im HTML-Dokument gesetzt wurde. Es geht nur mithilfe von >>parent.frames[„if1name“].location.href