13-05-2014, 01:57 PM
Vu que personne n'avance de solution, je vais avancer un truc, mais je sais plus trop si ca marche, j'ai pas retouché mon js pour le moment...
De souvenir, il existe aussi un setTimeout, qui ne marche qu'une fois...
Si j'étais toi, je ferais une fonction récursive
en gros :
var compte = 25;
function decompte()
{
//tout le code du timer
if (compte > 0) setTimeout(decompte(),1000)
}
setTimeout(decompte(),1000)
Si je me trompe pas, le timeout à la fin déclenche la fonction décompte au bout d'une seconde, mais qu'une seule fois. Et c'est la fonction elle-même qui se relance toute les secondes tant que le compte n'est pas de 0. Une fois à zero, plus de timeout donc plus de décompte.
PS : if(compte == 0 || compte < 0) -> tu peux pas faire if(compte <= 0) ?
De souvenir, il existe aussi un setTimeout, qui ne marche qu'une fois...
Si j'étais toi, je ferais une fonction récursive
en gros :
var compte = 25;
function decompte()
{
//tout le code du timer
if (compte > 0) setTimeout(decompte(),1000)
}
setTimeout(decompte(),1000)
Si je me trompe pas, le timeout à la fin déclenche la fonction décompte au bout d'une seconde, mais qu'une seule fois. Et c'est la fonction elle-même qui se relance toute les secondes tant que le compte n'est pas de 0. Une fois à zero, plus de timeout donc plus de décompte.
PS : if(compte == 0 || compte < 0) -> tu peux pas faire if(compte <= 0) ?