Verstehen des iFrame-Ladestatus
Die Überprüfung des Ladezustands eines iFrames ist wichtig, um Aktionen nach Abschluss auszuführen oder Ladefehler zu erkennen. In diesem Artikel geht es um die Herausforderung, den Ladestatus eines iFrames mit bestimmten Einschränkungen zu bestimmen.
Stellen Sie sich das folgende Szenario vor: Ein iFrame mit der ID „myIframe“ wird mithilfe des bereitgestellten Codes geladen. Allerdings variieren die Ladezeiten, was die Verwendung des Ereignisses „iframe.load()“ erschwert.
Lösung: Iterative Prüfung
Um dieses Problem zu beheben, wird eine iterative Prüfung durchgeführt Ansatz umgesetzt werden kann. Der folgende Codeausschnitt veranschaulicht diese Strategie:
<code class="javascript">function checkIframeLoaded() { // Get a handle to the iframe element var iframe = document.getElementById('i_frame'); var iframeDoc = iframe.contentDocument || iframe.contentWindow.document; // Check if loading is complete if (iframeDoc.readyState == 'complete') { //iframe.contentWindow.alert("Hello"); iframe.contentWindow.onload = function() { alert("I am loaded"); }; // The loading is complete, call the function we want executed once the iframe is loaded afterLoading(); return; } // If we are here, it is not loaded. Set things up so we check the status again in 100 milliseconds window.setTimeout(checkIframeLoaded, 100); } function afterLoading() { alert("I am here"); } window.onload = checkIframeLoaded();</code>
Dieser Code überprüft iterativ die „readyState“-Eigenschaft des iFrame-Dokuments und stellt so sicher, dass der Ladevorgang abgeschlossen ist, bevor die gewünschten Aktionen ausgeführt werden (z. B. Anzeigen einer Warnmeldung). Die Funktion „afterLoading()“ wird aufgerufen, sobald der iFrame geladen wurde.
Das obige ist der detaillierte Inhalt vonWie kann der Ladestatus eines iFrames zuverlässig überprüft werden, wenn „iframe.load()' fehlschlägt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!