Bonjour,

J'ai besoin de faire un compte à rebours sur un événement récurrent chaque semaine, de dimanche 4PM à dimanche 4PM.
Je sais faire un compte a rebours, mais pas d'une date fixe, qui se met à jour toute les semaines.

je ne comprends pas l’erreur dans mon code... Je sais pas trop comment faire alors j'ai essayé ça:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 
function Ravitaillement()
{
//variable pour rajouter une semaine en milisecondes
var semainePlus = 0;
var now = new Date();
 
//difference entre la date d'aujourdhui par rapport au dimanche 22 janvier 2012 a 4PM (en milisecondes)
var difference = now.getTime() - date.UTC(2012, 0, 22, 15);
 
 
//tant que la difference est négative
while (difference > 604800000)
{
//rajouter une semaine 
semainePlus += 604800000;
difference -= semainePlus;
}
 
// 3600000 = 1 heure en ms
Chour = parseInt(difference / 3600000 );
difference -= Chour *  3600000;
//60000 = 1min en ms
Cmin = parseInt(difference / 60000 );
difference -= Cmin * 60000;
//1000 = 1sec en ms
Csec =  parseInt(difference / 1000 );
difference -= Csec * 1000;
 
 
 
    //refresh
    if (document.getElementById("ravitaillement"))
        document.getElementById("ravitaillement").innerHTML = Chour +'h ' +  Cmin +'m ' + Csec +'s';
 
setTimeout('Ravitaillement()', 500);
 
}

Déjà ça fonctionne pas, mais après le principe est pourri parce que la boucle while sera de plus en plus longue à s'exécutée au fur et a mesure que le temps passe.