Redémarrage automatique compte à rebours JS

Résolu/Fermé
shoub-tcy Messages postés 169 Date d'inscription mardi 6 mars 2012 Statut Membre Dernière intervention 23 mai 2012 - 7 mai 2012 à 10:44
shoub-tcy Messages postés 169 Date d'inscription mardi 6 mars 2012 Statut Membre Dernière intervention 23 mai 2012 - 9 mai 2012 à 16:51
Bonjour,

J'ai inséré un compte à rebours Javascript sur mon site, et je voudrais qu'à la fin du décompte imposé, il redémarre automatiquement avec un autre délai. Je ne sais pas si c'est possible avec mon compte à rebours, donc si vous avez une autre solution, je suis preneur :)

Voici le code de mon compte à rebours :

<!-- Compte à rebours principal -->
<script>
function compte_a_rebour(){
var CompteARebours = document.getElementById("CompteARebours");
var date_actuelle = new Date();
var date_evenement = new Date("May 10 20:50:00 2012");
var secondes = (date_evenement - date_actuelle) / 1000;
if(secondes > 0){
DiffJour = Math.floor (secondes / 86400);
DiffHeure = Math.floor ((secondes - (DiffJour * 86400)) / 3600);
DiffMin = Math.floor ((secondes - ((DiffJour * 86400 + DiffHeure * 3600))) / 60);
DiffSec = Math.floor (secondes - ((DiffJour * 86400 + DiffHeure * 3600 + DiffMin * 60)));
var Et = "et";
if(DiffJour == 0){
DiffJour = '';
Jour = '';
} else {
Jour = (DiffJour == 1) ? "j," : "j,";
}
if(DiffHeure == 0){
DiffHeure = '';
Heure = '';
} else {
Heure = (DiffHeure == 1) ? "h," : "h,";
}
if(DiffMin == 0){
DiffMin = '';
Minute = '';
} else {
Minute = (DiffMin == 1) ? "min," : "min,";
}
if(DiffSec == 0){
DiffSec = '';
Seconde = '';
Et = '';
} else {
Seconde = (DiffSec == 1) ? "sec" : "sec";
Et = (DiffMin == 0 && DiffHeure == 0 && DiffJour == 0) ? "" : "";
}
CompteARebours.innerHTML = DiffJour + ' ' + Jour + ' ' + DiffHeure + ' ' + Heure + ' ' + DiffMin + ' ' + Minute + ' ' + Et + ' ' + DiffSec + ' ' + Seconde;
} else {
document.location.href="page_2.php";
}
Time_ReLance = setTimeout("compte_a_rebour();", 1000);
}
</script>
A voir également:

2 réponses

flav1313 Messages postés 751 Date d'inscription mardi 24 août 2010 Statut Membre Dernière intervention 22 octobre 2012 100
7 mai 2012 à 17:11
Tu lances récursivement ton compte à rebours lorsque le premier finit.
0
shoub-tcy Messages postés 169 Date d'inscription mardi 6 mars 2012 Statut Membre Dernière intervention 23 mai 2012 2
7 mai 2012 à 18:34
Merci d'avoir répondue flav1313.
Mais quel est le code pour faire ça ?
0
shoub-tcy Messages postés 169 Date d'inscription mardi 6 mars 2012 Statut Membre Dernière intervention 23 mai 2012 2
9 mai 2012 à 16:51
C'est bon, j'ai résolu mon problème.
J'ai rajouté ça à mon code :

var date_evenement_1 = new Date("May 9 11:35:00 2012");
var date_evenement_2 = new Date("May 9 11:40:00 2012");
var date_evenement = new Date();
var date_actuelle = new Date();

if (date_actuelle.getTime() < date_evenement_1.getTime()){
date_evenement.setTime(date_evenement_1.getTime());
alert("Evenement 1");
}else{
if (date_actuelle.getTime() < date_evenement_2.getTime()){
date_evenement.setTime(date_evenement_2.getTime());
alert("Evenement 2");
}else{
alert("Temps dépassé");
}
}
0