Angenommen, unser Projekt hat zwei HTMLs a und b, wie erhält a.html den Wert des Elements in b.html?
Seite B hat Eingaben
<input name="hh" type="text">
einen Seiten-HTML-Code:
<!-- HTML代码, src="指向地址" --> <!-- 如果不需要b页面展示在a页面, display: none;添加CSS代码隐藏掉 --> <iframe id="b" src="b.html" style="display: none; "></iframe>
einen Seiten-JavaScript-Code:
//为什么用 window.onload 下面会详解window.onload = function () { //先取到iframe var b= document.getElementById("b"); //通过iframe取其b.html上的值 var hh= b.contentDocument.getElementsByName("hh")[0].value; //弹出消息, 查看正确与否 alert(hh); }
window.onload: Alle Ressourcen auf der Seite werden geladen und ausgeführt
$
(document).ready(function(){}) (entspricht$
( in jQuery-Funktion(){}) ): Der DOM-Knoten der Seite wird erstellt und ausgeführt
Wenn Sie $(document).ready(function(){}) verwenden, erhalten Sie den Wert nicht. Die Antwort ist offensichtlich:
Obwohl der IFrame-Knoten erstellt wurde, wurden die Seitenressourcen nicht geladen, aber der JS-Code wird zu diesem Zeitpunkt sofort ausgeführt. Das Ergebnis ist, dass der Wert nicht abgerufen werden kann und window.onload wartet, bis alle Seitenressourcen vorhanden sind geladen, bevor der JS-Code ausgeführt wird
Danke fürs Lesen
Das obige ist der detaillierte Inhalt vonSo erhalten Sie den Wert eines Elements in einem Iframe über JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!