[JavaScript] Compte à rebours

Fermé
NRgizer - 29 juin 2009 à 12:04
 NRgizer - 29 juin 2009 à 16:58
Bonjour,

J'ai passé pas mal de temps à faire des recherches pour trouver la solutions mais elle ne se sont pas montrées fructueuses.

Je vous explique le problème. J'ai fais un site internet faisant passer des QCM et j'aimerais qu'un compte à rebours dynamique (défilant de secondes en secondes) soit afficher pendant le QCM et qu'a la fin de ce compte à rebours, il y ai une redirection vers une autre page du site.

Alors effectiement il y a une fonction "countdown" mais je n'arrive pas à bien l'appliquer à mon problème. il y a aussi des compte à rebours js avec les types Date mais vu que je ne connais pas la date cible (c'est à dire la date du moment du test + 20 minutes) et bah cela ne m'est pas très utile.

Voila, alors si quelqun peut me venir en aide, ca serait sympatique,

cordialement,
A voir également:

16 réponses

resalut Messages postés 784 Date d'inscription vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010 55
29 juin 2009 à 12:46
utilise settimeout
0
C'est à dire? tu peux me mettre un exemple de code?
0
resalut Messages postés 784 Date d'inscription vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010 55
29 juin 2009 à 13:15
redirection dans 20 secondes :
<script type="text/javascript">
function redirige()
{
setTimeout('document.location.href="https://www.google.fr/?gws_rd=ssl"',20000)
}
window.onload = redirige();
</script>
0
ok ca marche c'est parfait, parcontre, est il possible que l'utilisateur vois le temps restant en direct pendant qu'il répond sur la page de qcm?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
resalut Messages postés 784 Date d'inscription vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010 55
29 juin 2009 à 13:56
oui faut ktu fasse une function ki recharge une balise tt les secondes
0
une fonction qui recharge une balise? space?

t'as un petit exemple?
0
resalut Messages postés 784 Date d'inscription vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010 55
29 juin 2009 à 14:06
<script type="text/javascript">
function changee()
{
document.getElementById('exemple').innerHTML='exemple';
}
</script>
<div id="exemple">
<a href="javascript:rien();" onclick="changee();">clic</a>
</div>
0
Heu...ouai,

Je vois à peur près ce que cela fais, mais parcontre tu es obligé de cliquer pour voir ce que cela affiche.

Tu peux me montrer le code pour pouvoir un compte à rebours de 20 minutes sans avoir besoin de cliquer?

Car sinon c'est une perte de temps pour les utilisateur que de cliquer.
0
resalut Messages postés 784 Date d'inscription vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010 55
29 juin 2009 à 14:15
bien sur et tu veux cent balle un mars et une pipe ? :p
0
ok bah merci du coup de main -_-'
0
resalut Messages postés 784 Date d'inscription vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010 55
29 juin 2009 à 14:54
lol jrigole chui dessus mais g un pb pour afficher les secondes g pas trouver la bonne formule mathematique
0
j'ai fais ca ce matin mais galère, moi j'y comprend rien au js à vrai dire, je suis plus php'addict :p
0
resalut Messages postés 784 Date d'inscription vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010 55
29 juin 2009 à 15:03
moi chuis plus php,javascript,css,sql :p lol ca t ennuie si je convertit pas les secondes et ke je laisse le nombre de seconde complete ?
0
non tkt c'est bon, du moment que ce compte à rebours est visible par l'utilisateur.
0
Utilisateur anonyme
29 juin 2009 à 15:25
<html>
<head>
</head>
<body>

Il vous reste : <span id='idIciSeconde'></span> minute(s)

<script language='javascript'>
nombreDeMinute=20;
objIciSeconde=document.getElementById('idIciSeconde');
objIciSeconde.innerHTML=nombreDeMinute;
urlDeRedirection="https://www.google.fr/?gws_rd=ssl";

function compteArebours()
{
nombreDeMinute=nombreDeMinute-1;
objIciSeconde.innerHTML=nombreDeMinute;

if(nombreDeMinute>0)
{setTimeout("compteArebours()",10000);}

else if(nombreDeMinute==0)
{location.href=urlDeRedirection;}

}

setTimeout("compteArebours()",10000);

</script>

</body>
</html>
0
Merci beaucoup toto et resalut aussi, ca m'a beaucoup aidé, ca marche c'est parfait, je l'ai en pluis amélioré pour que ça face un décompte minutes + secondes.

Voici mon code pour ceux que ça intéresse:
<script language='javascript'>
nombreDeMinute=19;
objIciMinutes=document.getElementById('idIciMinutes');
objIciMinutes.innerHTML=nombreDeMinute;
urlDeRedirection="https://www.google.fr/?gws_rd=ssl";

function compteArebours()
{
nombreDeMinute=nombreDeMinute-1;
objIciMinutes.innerHTML=nombreDeMinute;

if(nombreDeMinute>0)
{setTimeout("compteArebours()",60000);}

else if(nombreDeMinute==0)
{location.href=urlDeRedirection;}

}

setTimeout("compteAreboursSec()",1000);
setTimeout("compteArebours()",60000);

/*****************//******************//********************//*****************//***************//****************/

nombreDeSeconde=59;
objIciSecondes=document.getElementById('idIciSecondes');
objIciSecondes.innerHTML=nombreDeSeconde;
urlDeRedirection="https://www.google.fr/?gws_rd=ssl";

function compteAreboursSec()
{
nombreDeSeconde=nombreDeSeconde-1;
objIciSecondes.innerHTML=nombreDeSeconde;

if(nombreDeSeconde>0)
{setTimeout("compteAreboursSec()",1000);}

else if(nombreDeSeconde==0)
{
nombreDeSeconde=60;
setTimeout("compteAreboursSec()",1000);
 }

}

</script>
0