Une heure graphique simple en javascript

Soyez le premier à donner votre avis sur cette source.

Vue 18 976 fois - Téléchargée 2 105 fois

Description

ce code affiche des images toutes les secondes dans le cas présent ces images sont pour une heure dynamique

Source / Exemple :


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<script language="javascript">
<!--

function getTmp(){ //rècupere l'heure courante toutes les secondes

var temps = new Date();

var heures = temps.getHours();
var minutes = temps.getMinutes();
var secondes = temps.getSeconds();

  document.Heure.src = getImg(heures);
  document.DP1.src = getImg(60);
  document.Minute.src = getImg(minutes);
  document.DP2.src = getImg(60);
  document.Seconde.src = getImg(secondes);
  
  setTimeout("getTmp()",1000);

}

function getImg(img) { //dans laquelle getTmp() vas chercher les images

  var mem;
  
  switch(img) {
  
		case 0 : mem = "heure/00.png"; break;
		case 1 : mem = "heure/01.png"; break;
		case 2 : mem = "heure/02.png"; break;
		case 3 : mem = "heure/03.png"; break;
		case 4 : mem = "heure/04.png"; break;
		case 5 : mem = "heure/05.png"; break;
		case 6 : mem = "heure/06.png"; break;
		case 7 : mem = "heure/07.png"; break;
		case 8 : mem = "heure/08.png"; break;
		case 9 : mem = "heure/09.png"; break;
		case 10 : mem = "heure/10.png"; break;
		case 11 : mem = "heure/11.png"; break;
		case 12 : mem = "heure/12.png"; break;
		case 13 : mem = "heure/13.png"; break;
		case 14 : mem = "heure/14.png"; break;
		case 15 : mem = "heure/15.png"; break;
		case 16 : mem = "heure/16.png"; break;
		case 17 : mem = "heure/17.png"; break;
		case 18 : mem = "heure/18.png"; break;
		case 19 : mem = "heure/19.png"; break;
		case 20 : mem = "heure/20.png"; break;
		case 21 : mem = "heure/21.png"; break;
		case 22 : mem = "heure/22.png"; break;
		case 23 : mem = "heure/23.png"; break;
		case 24 : mem = "heure/24.png"; break;
		case 25 : mem = "heure/25.png"; break;
		case 26 : mem = "heure/26.png"; break;
		case 27 : mem = "heure/27.png"; break;
		case 28 : mem = "heure/28.png"; break;
		case 29 : mem = "heure/29.png"; break;
		case 30 : mem = "heure/30.png"; break;
		case 31 : mem = "heure/31.png"; break;
		case 32 : mem = "heure/32.png"; break;
		case 33 : mem = "heure/33.png"; break;
		case 34 : mem = "heure/34.png"; break;
		case 35 : mem = "heure/35.png"; break;
		case 36 : mem = "heure/36.png"; break;
		case 37 : mem = "heure/37.png"; break;
		case 38 : mem = "heure/38.png"; break;
		case 39 : mem = "heure/39.png"; break;
		case 40 : mem = "heure/40.png"; break;
		case 41 : mem = "heure/41.png"; break;
		case 42 : mem = "heure/42.png"; break;
		case 43 : mem = "heure/43.png"; break;
		case 44 : mem = "heure/44.png"; break;
		case 45 : mem = "heure/45.png"; break;
		case 46 : mem = "heure/46.png"; break;
		case 47 : mem = "heure/47.png"; break;
		case 48 : mem = "heure/48.png"; break;
		case 49 : mem = "heure/49.png"; break;
		case 50 : mem = "heure/50.png"; break;
		case 51 : mem = "heure/51.png"; break;
		case 52 : mem = "heure/52.png"; break;
		case 53 : mem = "heure/53.png"; break;
		case 54 : mem = "heure/54.png"; break;
		case 55 : mem = "heure/55.png"; break;
		case 56 : mem = "heure/56.png"; break;
		case 57 : mem = "heure/57.png"; break;
		case 58 : mem = "heure/58.png"; break;
		case 59 : mem = "heure/59.png"; break;
		case 60 : mem = "heure/DP.png"; break;
  }

return mem;

}

//-->
</script>

</head>
<body onload= "getTmp()">

<table><tr><td>
<img id="Heure" /><img id="DP1" /><img id="Minute" /><img id="DP2" /><img id="Seconde" />
</table></tr></td>

</body>
</html>

Conclusion :


Bien entendu il vous faut un répertoire nommé heure/ , qui contiendra les images (ici en "png") nommées de 00.png à 59.png et une DP.png pour les deux points ;-).
(Il est asser facile et rapide de créer ces images avec photoshop ou gimp ou tout autres logiciels utilisant les calques)

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

rrk275
Messages postés
542
Date d'inscription
vendredi 25 juin 2004
Statut
Membre
Dernière intervention
1 octobre 2007
2
ce que bultez disait ( entre autres .. ):

function getImg(img)
{
if(img >= 10 )
return "heure/"+img+".png" ;
return "heure/0"+img+".png" ;
}
reynum
Messages postés
7
Date d'inscription
lundi 13 novembre 2000
Statut
Membre
Dernière intervention
12 juillet 2011

En fait si on veut faire vraiment jolis, avec des polices spéciales, des effets d'ombrages... Il faut les 61 images, car si on en met juste 11 elles ne sont pas bien liées entre elle (il y a trop d'espace quand les chiffres sont > 10)et c'est moins joli voir laid.
Donc je garde cette solution qui est simple et fonctionne parfaitement.
reynum
Messages postés
7
Date d'inscription
lundi 13 novembre 2000
Statut
Membre
Dernière intervention
12 juillet 2011

C'est vrais pour les images d'ailleur dés que j'aurais le temps je vais refaire le code pour 11 images (0 à 9 avec les deux points).
De plus je pense que certaines personnes (moi par exemple) aime avoir une jolie horloge en temps réel sur leur site.
Je sais que de nombreux codes existent déja mais celui-la c'est le mien et je l'aime bien en plus je le trouve plus clair que beaucoup d'autres que j'ai eu l'occasion de voir.
Voilou @++
cs_bultez
Messages postés
13619
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
27
ça part d'un bon sentiment. mais déjà :
_ 10 images seraient suffisantes ( de 0 à 9 )
_ on peut "facilement" éviter le switch avec 60 case
_ affichage de l'heure toutes les secondes : est-ce nécessaire ?
_ de nombreux exemples existent déjà
_ ...
Cordialement.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.