Javascript horloge animé

mmetalect Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
mmetalect Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
j'essayai de coder une horloge animé, mais j'ai rencontré un petit problème que je n'arrive pas à résoudre, l'horloge ne s'affiche pas.
j'ai le droit à deux types d'erreurs:
-printHor is not defined, alors que j'ai bien défini la fonction printHor()
-missing ) after argument list, or je ne vois pas d'oublis de ; ou de )
merci de m'aider

voici mon code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>test horloge</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
   </head>
   <body>
   <script type="text/javascript">
   function updateHor()
   {
		var dt = new Date();
		var jour = Array("Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi");
		var mois = Array("Jan.", "Fév.", "Mars", "Avr.", "Mai", "Juin", "Juil.", "Août", "Sept.", "Oct.", "Nov.", "Déc.");
		var Y = dt.getFullYear();
		var M = mois[dt.getMonth()];
		var D = dt.getDate();
		if(D == 1){D = "1er";}
		var J = jour[dt.getDay()];
		var H = dt.getHours();
		if(H < 10){H = "0" + H;}
		var I = dt.getMinutes();
		if(I < 10){I = "0" + I;}
		var S = dt.getSeconds();
		if(S < 10){S = "0" + S;}
		document.getElementById("horDiv").innerHTML = J+" "+D+" "+M+"<br />"+H+":"+I+":"+S;
		setTimeout("updateHor()" 1000);
   }
   
   function printHor()
   {
		if(document.getElementById)
		{
			var txtHor = "<div id=\"horDiv\">d</div>";
			document.write(txtHor);
			updateHor();
		}
   }
   
   </script>
   <style type="text/CSS">
   #horDiv
   {
		width:150px;
		border:1px solid #000;
		font-size:10pt;
		background-color:#FFF;
		color:#000;
		text-align:center;
   }
   </style>
   <script type="text/javascript">
 
   </script>
   </body>
</html>




A voir également:

4 réponses

mimigenie Messages postés 1180 Date d'inscription   Statut Membre Dernière intervention   313
 
Il y a deux choses qui ne vont pas dans ton code :

Tu as une balise style dans l'élément body alors qu'il faut la mettre de l'élément head.
Tu as une balise script à la fin qui ne contient rien du tout.

Règle ces deux problèmes et voit ce que ca donne ;)
1
mmetalect Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
J'ai le droit à la première erreur,
voici le code que j'obtiens :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>test horloge</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
	   <style type="text/CSS">
   #horDiv
   {
		width:150px;
		border:1px solid #000;
		font-size:10pt;
		background-color:#FFF;
		color:#000;
		text-align:center;
   }
   </style>
   </head>
   <body>
   <script type="text/javascript">
   function updateHor()
   {
		var dt = new Date();
		var jour = Array("Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi");
		var mois = Array("Jan.", "Fév.", "Mars", "Avr.", "Mai", "Juin", "Juil.", "Août", "Sept.", "Oct.", "Nov.", "Déc.");
		var Y = dt.getFullYear();
		var M = mois[dt.getMonth()];
		var D = dt.getDate();
		if(D == 1){D = "1er";}
		var J = jour[dt.getDay()];
		var H = dt.getHours();
		if(H < 10){H = "0" + H;}
		var I = dt.getMinutes();
		if(I < 10){I = "0" + I;}
		var S = dt.getSeconds();
		if(S < 10){S = "0" + S;}
		document.getElementById("horDiv").innerHTML = J+" "+D+" "+M+"<br />"+H+":"+I+":"+S;
		setTimeout("updateHor()" 1000);
   }
   
   function printHor()
   {
		if(document.getElementById)
		{
			var txtHor = "<div id=\"horDiv\">d</div>";
			document.write(txtHor);
			updateHor();
		}
   }
   
   </script>
   
   <script type="text/javascript">
	printHor();
   </script>
   </body>
</html>
0
mimigenie Messages postés 1180 Date d'inscription   Statut Membre Dernière intervention   313
 
Et ca marche ou pas avec ce code ? ^^
0
mmetalect Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
non, je vais essayer avec un autre navigateur
0
mmetalect Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
ça ne marche ni avec google chrome, ni avec internet explorer, merci quand même d'avoir essayé de m'aider
0