Rafraichir affichage pendant une fonction
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 :
Code:
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);
} |
et mis mon div dans une pop.
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