11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour à tous,

Je cherche une barre de progression mais sans la barre, que le %

Un espèce de chrono pourcentage.

En gros c'est pour mettre en intro d'un site faire afficher simplement un chrono de 0 à 100% qui dure 3seconde.

Je sais faire tout le reste ( cacher le div ..etc ) mais je ne sais pas faire ce chrono ...

Si quelqu'un a une idée ... car ca fait un petit moment que je cherche, j'ai essayer avec une boucle for mais ça m'affiche directement 100 ...

Merci d'avance.
juju
Pour info, voici le debut code testé :

for (var i=0;i<100;i++) {
$('#chargementtxt').delay(500).html(i);
}



le probleme c'est que le div "chargementtxt" passe immédiatement à 99 .. on ne voit pas de chargement à 1 , 2, 10, 50 ..etc

si quelqu'un peut m’aiguiller un peu ...
Salut,

delay() est fait pour retardé les événements d'une file d'attente. Genre une animation ou une personnalisée avec queue()/dequeue(), ce qui n'est pas adapté à ton besoin.
Pour les événements temporaires utilise les fonctions setTimeout() ou setInterval().

Au passage, c'est très désagréable d'attendre -ne serai-ce que 3 secondes- qu'une page veuille bien afficher son contenu
Modifié par jo_link_noir (18 Sep 2012 - 22:51)
Salut, et un truc dans se style la ça pourrait t'aider :

var chrono = window.setInterval(function() {
	var i = $('#chargementtxt').html() || 0;
	i = parseInt(i) + 1;

	$('#chargementtxt').html(i);
}, 3000/100); // 3 secondes = 3000 milisecondes à diviser par 100 pour un compteur allant jusqu'a 100 en 3 secondes


bien sur après les 3 secondes faut penser a clearInterval(chrono) pour que ça s'arrête Smiley cligne