J'ai de nombreuses pages Web qui doivent être actualisées automatiquement une fois par minute. Facilement fait avec META REFRESH ou un peu de javascript. (Et oui, les pages entières doivent être rafraîchies - BEAUCOUP de contenu qui change).Page Web de rafraichissement automatique robuste
Cependant, il doit être aussi robuste que possible. Si le serveur Web est momentanément arrêté ou s'il y a un hiccup de réseau, il ne peut pas être actualisé et reçoit alors une erreur 404, etc. et reste bloqué en permanence sur la page d'erreur.
La seule option que je peux trouver est l'hôte de la page entière dans un IFRAME, et ont un script sur la page de parent frais la page encadrée. Le cadre devrait être invisible, donc tout redimensionnement de la fenêtre aurait également besoin de redimensionner l'IFRAME.
Existe-t-il une solution plus simple et plus élégante? (Aller à Flash/AIR/Silverlight n'est pas non plus une option en raison des contraintes de temps).
C'est une bonne idée. Je le fais maintenant, sauf remplacer plutôt document.documentElement.innerHTML. De cette façon, la page peut continuer à revenir normalement avec les balises de tête et de corps. On dirait que cela fonctionne bien dans tous les principaux navigateurs, autant que je sache. – DougN
J'ai évité cela parce que je ne suis pas sûr de la façon dont le navigateur le gère si vous ajoutez un nouveau document avec le script et les balises css dans l'en-tête. Il pourrait recharger les fichiers chaque fois que vous remplacez la page, ce qui peut ne pas être ce que vous voulez. Une autre idée pourrait être d'utiliser response.responseXML et d'obtenir le tag body de celui-ci et de le cloner dans votre document en utilisant les méthodes DOM, mais je suppose que votre page doit être XHTML, sinon l'analyse XML pourrait échouer. – Reboot
Hmmm, oui, après plus de tests, il semble que documentElement.innerHTML ne fonctionne pas - il ne charge pas de CSS avec Chrome, et les scripts ne fonctionnent pas avec Chrome ou Firefox. Je suis donc de retour à la recherche d'une solution solide qui ne nécessite pas de réécrire chaque page. Uggg, j'espère que les iframes ne sont pas la seule option. – DougN