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
572 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!

source:php
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