Bonjour à tous,
j'utilise une iframe (je sais c'est mal mais c'est pour intégrer voxli au panneau de modération de mon site).

Le modérateur est informé du chargement de la page dans l'iframe grâce à une barre de progression (comme le chargement est lent, ça évite les click à répétitions...).

Pour ce faire, j'utilise le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
var theFrame = document.getElementById('iframe');
theFrame.onLoadWaiter=setInterval(function() {
   try { if ((theFrame.contentWindow && theFrame.contentWindow.document.readyState=="complete") || (theFrame.window && theFrame.window.document.body.lastChild)) {
	 clearInterval(theFrame.onLoadWaiter);
	 delete theFrame.onLoadWaiter;
	 iscomplete(); // stop la barre de progression
   } else{progressing(); // fait défiler la barre de progression
}} catch (ex) {}
}, 100)
Au 1er chargement de la page, ça fonctionne très bien sous IE et FF. Problème: quand je modifie la page de l'iframe, FF ne détecte pas le changement de statut de l'iframe. Alors que sous IE, lorsque la page de l'iframe change, theFrame.contentWindow.document.readyState évolue : "complete" => "loading" => "complete"

Sous FF, ça reste "complte" => "complete" => "complete" (la page dans l'iframe change pourtant)

Comment puis indiquer à FF que le contenu de la frame a été mis à jour svp? Et donc comment faire évoluer theFrame.contentWindow.document.readyState = "loading" sous FF?


Merci pour votre aide