Bonjour,
j'essaye de mettre en place une barre de progression pendant l'execution du fonction JS (qui fait entr'autre plusieurs appels Ajax).
D'abord essayé un simple <div> dans lequel je concaténait des span (les carrés bleu de la barre) dans le innerHTML à différentes étapes du script.
Ca fonctionne, sauf que ça se voit pas : l'affichage est bloqué jusqu'à fin du script. Au mieux le div s'affiche, mais la barre progresse pas, et le div s'efface (normal) sans que la barre soit apparue.
Comme j'ai appris ici qu'innerHTML => pas glop, j'ai essayé ça :et mis mon div dans une pop.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 function Progress() { var carre = fen_attente.document.createElement("span"); var txt_vide = fen_attente.document.createTextNode(" "); carre.appendChild(txt_vide); var progression = fen_attente.document.getElementById("barre"); progression.appendChild(carre); }
La pop s'ouvre, le div apparait, mais la barre n'apparait toujours pas jusqu'à fermeture de la pop en fin de script.
Je précise :
1) que les différente versions "fonctionnaient" (au sens technique) : avec des alert() de debug, je voyais tout bien comme y faut.
2) s'agissant d'un intranet, en dev l'éxécution dure 1 à 2 seconde max., mais en prod, suivant les sites, le traitement pourra être + long
Si qq1 avait une piste ...
Merci
Partager