Maison > interface Web > js tutoriel > Comment implémenter un rappel lorsqu'un IFRAME termine le chargement avec Javascript ?

Comment implémenter un rappel lorsqu'un IFRAME termine le chargement avec Javascript ?

Patricia Arquette
Libérer: 2024-10-19 11:19:29
original
617 Les gens l'ont consulté

How to Implement a Callback When an IFRAME Finishes Loading with Javascript?

Chargement d'un Iframe avec un rappel Javascript

Pour exécuter un rappel lorsqu'un IFRAME termine le chargement, suivez ces étapes :

Créez l'IFRAME et le gestionnaire de charge

Créez l'IFRAME par programme :

<code class="javascript">var iFrameObj = document.createElement('IFRAME');
iFrameObj.src = url;</code>
Copier après la connexion

Ajoutez un gestionnaire de charge à l'IFRAME :

<code class="javascript">$(iFrameObj).load(function() {
  // handle iframe load
});</code>
Copier après la connexion

Accédez au contenu IFRAME et détruisez-le

Dans le gestionnaire de chargement, accédez au contenu de l'IFRAME et détruisez-le :

<code class="javascript">function callback(iFrameObj) {
  // obtain iframe data
  var iframeData = $('body', iFrameObj.contentWindow.document).html();
  // destroy the iframe
  document.body.removeChild(iFrameObj);
}</code>
Copier après la connexion

Considérations supplémentaires

  • Assurez-vous que si vous utilisez des délais d'attente pour la suppression, définissez un délai approprié pour permettre à l'IFRAME de se charger.
  • Évitez les requêtes intersites car leur contenu n'est pas accessible.
  • Utilisez jQuery pour la compatibilité entre navigateurs et les événements de chargement explicites.

Exemple

<code class="javascript">$('#myUniqueID').load(function() {
  if (typeof callback == 'function') {
    callback($('body', this.contentWindow.document).html());
  }
  setTimeout(function () {$('#frameId').remove();}, 50);
});</code>
Copier après la connexion

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 de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal