Bonjours à toutes et à tous !

Je viens quémander une petite aide si cela est possible .

J'aimerai mettre en place un petit compte à rebours paramétrable. L'utilisateur pourra indiquer le nombre de secondes à faire écouler, et appui sur le bouton pour lancer la fonction.

Je n'ai pas de message d'erreur console, mais rien ne se passe.

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
 
<html>
	<head>
		<title>Barre de progression rebours test</title>
		<script type="text/javascript">
			var i = function (){getElementById('a1').value;}; //seconde a decrementer
			function timedProg() {
				if (i >= 0) {
					document.getElementById("cadre").innerHTML=parseInt(i)+"s";
					setTimeout("timedProg();", 1000);
					i--;   
				}
			}
 
		</script>
	</head>
	<body  >
		<noscript class="cadre">Vous devez activer le Javascript pour avoir le timer !</noscript>
		<input type="text" width="25" id="a1"><input type="button" onClick="javascript:timedProg();">
		<div  id="cadre"></div>
	</body>
</html>
Par contre si je met uniquement le code javascript de cette manière :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
<script type="text/javascript">
			var i = 10; //secondes à décrémenter
			function timedProg() {
				if (i >= 0) {
					document.getElementById("cadre").innerHTML=parseInt(i)+"s";
					setTimeout("timedProg();", 1000);
					i--;   
				}
			}
 
		</script>
Ce code fonctionne mais je peux pas passer les paramètres avec mon input text.

Ne marche pas non plus si je récupère i directement dans la fonction timedProg() ou que j'y incorpore le paramètre "i" et que je défini "i" dans mon appel onClick.

Quelqu'un aurai une idée ? Merci d'avance !