Comprendre l'état de chargement d'un iFrame
Vérifier l'état chargé d'un iFrame est essentiel pour exécuter des actions une fois terminé ou détecter les échecs de chargement. Cet article aborde le défi de déterminer l'état chargé d'un iFrame avec des contraintes spécifiques.
Considérez le scénario suivant : un iFrame avec l'identifiant "myIframe" est chargé à l'aide du code fourni. Cependant, les temps de chargement varient, rendant difficile l'utilisation de l'événement "iframe.load()".
Solution : Vérification itérative
Pour pallier à ce problème, une vérification itérative Une approche peut être mise en œuvre. L'extrait de code suivant illustre cette stratégie :
<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>
Ce code vérifie de manière itérative la propriété "readyState" du document iFrame, garantissant la fin du chargement avant d'exécuter les actions souhaitées (par exemple, afficher un message d'alerte). La fonction "afterLoading()" est appelée une fois l'iFrame chargé.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!