Bonjour à tous,
Sur l'un de nos sites de vente en ligne, la création d'une commande prend plusieurs étapes. Nous informons le client chaque fois qu'une étape est terminée pour le faire matienter. Chaque étape fait l'objet d'un appel Ajax, d'un traitement PHP et d'une notification graphique gérée en JavaScript.
Firefox affiche parfaitement le résultat souhaité, on voit bien la progression de la construction de la commande. Mais Internet Explorer 8 attend la fin de la construction de la commande avant de mettre à jour le contenu de la page. Ainsi, les utilisateurs d'Internet Explorer ne peuvent pas voir les étapes se dérouler sous leur yeux.
Ce probléme est donc plus général, on dirait que Firefox affiche les modifications JavaScript au fur et à mesure de l'exécution alors qu'Internet Explorer attend la fin des scripts pour afficher le résultat final sans les résultats intermédiaires.
Au cours de mes tests, j'ai remarqué que si je place un JavaScript Alert, Internet Explorer affiche bien l'état actuel de la commande. Mais il est impossible d'afficher un Alert à chaque étape car ça n'a pas de sens en terme d'ergonomie.
Au niveau PHP, j'ai testé les fonctions Flush, mais le probléme se trouve en fait au niveau d'Internet Explorer... comment le forcer à afficher en temps réeel les commandes JavaScript plutot que d'afficher le résultat final sans attendre la fin du script ?
Je cherche depuis des lustres sans trouver de solution, c'est pour cela que je fais appel à la communauté... merci par avance pour votre aide.
Partager