"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > 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 ?

Publié le 2024-11-07
Parcourir:589

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, procédez comme suit :

Créez l'IFRAME et le gestionnaire de chargement

Créez l'IFRAME par programme :

var iFrameObj = document.createElement('IFRAME');
iFrameObj.src = url;

Ajouter un gestionnaire de chargement à l'IFRAME :

$(iFrameObj).load(function() {
  // handle iframe load
});

Accéder au contenu de l'IFRAME et le détruire

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

function callback(iFrameObj) {
  // obtain iframe data
  var iframeData = $('body', iFrameObj.contentWindow.document).html();
  // destroy the iframe
  document.body.removeChild(iFrameObj);
}

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

$('#myUniqueID').load(function() {
  if (typeof callback == 'function') {
    callback($('body', this.contentWindow.document).html());
  }
  setTimeout(function () {$('#frameId').remove();}, 50);
});
Déclaration de sortie Cet article est réimprimé à l'adresse : 1729302797. En cas d'infraction, veuillez contacter [email protected] pour le supprimer.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3