Im Projekt müssen Sie häufig iFrames dynamisch hinzufügen und dann verwandte Vorgänge auf den hinzugefügten IFrames ausführen. Manchmal begegnen Sie den Grund, warum der Iframe sehr langsam lädt und wie man ihn löst? Lassen Sie uns diesen Artikel mit dieser Frage lernen und die Antworten finden!
aaa.html
<html> <kopf> <titels> aaa </title> </head> <body> <frame src = "bbb.html" name = bbb> </iframe> <input type = "button" value = "text steuerungswert" onclick = "alert (bbb.document.All.All.TXT.TXT.VALUE.VALUE)"> " Sprache = "javaScript"> alert (bbb.document.all.txt.value); </script> </body> </html>
bbb.html
<html> <kopf> <titels> bb </title> </head> <body> <Eingabe type = text name = txt value = "guoguo"> </body> </html>
Frage:
Führen Sie die oben genannten AAA.html aus und stellen Sie fest, dass der Code direkt nicht eingegeben wurde. Wenn Sie auf die Schaltfläche klicken, können Sie seinen Wert erzeugen.
analysieren:
Wenn die Seite geladen ist, springen Sie beim Begegnung mit einem Iframe darüber, laden Sie den folgenden Inhalt und kommen dann zurück, um den Iframe zu laden. Natürlich kann auch verstanden werden, dass Sie einen Thread öffnen, um den Iframe zu laden, wenn Sie auf einen Iframe stoßen. Da es jedoch zeitaufwändig ist, neue IO-Operationen zu betreffen, ist das Laden des Iframe noch später als die Ausführung des JS-Code am Ende der Seite, so dass das obige Problem auftritt.
Lösung:
Fügen Sie eine Verzögerung im JS -Code hinzu (die spezifische Verzögerung kann auf persönlichen Erfahrungen basieren), damit Sie sicherstellen können, dass die Objekte im Iframe normal erhalten werden.
<Script Language = "javaScript"> setTimeout ("alert (bbb.document.all.txt.value)", 1500); </script>Schlussfolgerung: Wenn ein Iframe in einer Seite enthalten ist und wir das Objekt im Iframe über JS bedienen möchten, müssen wir warten, bis der Iframe vor dem Betrieb geladen ist, andernfalls erhalten wir nicht das gewünschte Objekt.
Die oben genannte Lösung für die langsame Belastung von JS Iframe, die Ihnen vom Editor vorgestellt wurden. Ich hoffe, es wird Ihnen hilfreich sein. Gleichzeitig möchte ich Ihnen viel für Ihre Unterstützung für die Wulin.com -Website danken!