64 votes

Détecter l'échec du chargement du contenu d'une iframe

Je peux détecter le moment où le contenu d'une iframe a été chargé en utilisant la fonction charge événement. Malheureusement, pour mes objectifs, il y a deux problèmes avec cela :

  • Si une erreur survient lors du chargement de la page (404/500, etc.), l'événement load n'est jamais déclenché.
  • Si le chargement de certaines images ou d'autres dépendances a échoué, l'événement de chargement est déclenché comme d'habitude.

Existe-t-il un moyen de déterminer de manière fiable si l'une des erreurs ci-dessus s'est produite ?

J'écris une application semi-web semi-desktop basée sur Mozilla/XULRunner, donc les solutions qui ne fonctionnent que dans Mozilla sont les bienvenues.

0voto

Kasturi Points 1850

Ayez un identifiant pour l'élément le plus haut (body) de la page qui est chargée dans votre iframe.

sur le gestionnaire de chargement de votre iframe, vérifiez si getElementById() renvoie une valeur non nulle. Si c'est le cas, le chargement de l'iframe a réussi, sinon il a échoué.

dans ce cas, mettez frame.src="about:blank". Veillez à supprimer le loadhandler avant de faire cela.

1 votes

Que se passe-t-il si nous n'avons pas le contrôle de la page que nous chargeons ? alors comment gérer cette situation ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X