Minuteur javascript

Par Lens Durandisse, il y a 11 ans


Voici le code :

<!DOCTYPE html> <html> <head> <title>Prêt? Partez!</title> <meta charset="utf-8"/> <script type="text/javascript"> var attente; function minutageGo(){ var nombre_qui_change = window.document.formulaire.minuteur.value; nombre_qui_change = parseInt(nombre_qui_change) + 1; window.document.formulaire.minuteur.value = nombre_qui_change; attente = setTimeout("minutageGo()", 1000); } </script> </head> <body> <form name="formulaire"> <input type="text" name="minuteur" value= 0><br> <input type="button" value="Démarrez!" onClick="minutageGo();"> <input type="button" value="Arrêter" onClick="clearTimeout(attente)"> </form> </body> </html>

Je ne comprends pas, pourquoi on est obligé de mettre la fonction setTimeout dans une variable, pour l'arrêter avec clearTimeout après ...

J'ai essayé de tout simplement écrire clearTimeout('minutageGo()')
dans le script et cela ne fonctionne pas.

Un peu plus d'éclaircissement sur les fonction setTimeout et clearTimeout serait bien, je lis un livre mais je ne sais pas trop ce concet ...

6 réponses

Grafikart, il y a 11 ans

C'est comme ça il n'y a pas le choix. clearTimeout prend en paramètre un handle qui correspond à ce qu'à retourner setTimeout();

Bakar23, il y a 11 ans

La doc est super claire, jvois pas quoi ajouter de plus.

Lens Durandisse, il y a 11 ans

Merci pour vos réponses

green68, il y a 11 ans

@Lens Durandisse, résolue ?

Lens Durandisse, il y a 11 ans

Ah oui, depuis un moment déja.