Maison  >  Article  >  interface Web  >  Comment gérer les événements de chargement d'IFrame en Javascript sans accéder au contenu ?

Comment gérer les événements de chargement d'IFrame en Javascript sans accéder au contenu ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-19 10:07:30911parcourir

How to Handle IFrame Loading Events in Javascript without Accessing Content?

Gestion des événements de chargement d'IFrame en Javascript

En Javascript, l'exécution d'un rappel à la fin du chargement d'IFRAME est possible, même si le contenu de l'IFRAME est inaccessible. Voici comment y parvenir :

Méthode :

  1. Créez l'IFRAME par programme et ajoutez-le au DOM.
  2. Utilisez jQuery . Gestionnaire d'événements load() pour détecter l'achèvement du chargement d'IFRAME.
  3. Utilisez un délai d'attente (par exemple, 50 millisecondes) dans le rappel pour retarder la suppression d'IFRAME, garantissant ainsi la récupération des données.

Exemple :

<code class="js">$('#myUniqueID').load(function () {
    if (typeof callback === 'function') {
        // Retrieve the IFRAME body content and pass it to the callback
        callback($('body', this.contentWindow.document).html());
        // Remove the IFRAME after a short delay to allow content retrieval
        setTimeout(function () { $('#myUniqueID').remove(); }, 50);
    }
});</code>

Remarque : Si le contenu IFRAME est diffusé à partir d'un domaine différent, la récupération de son corps ne sera pas possible en raison du partage de ressources d'origine croisée (CORS). restrictions.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn