Timezone/décalage horaire

Description

Un petit code simple pour afficher l'heure de n'importe quel coin du monde sur le poste utilisateur.
(Mise à jour) Prend en compte les pays suivant l'heure solaire.

Source / Exemple :


<html><head>
<title>decalage horaire</title>
<script language="JavaScript"><!--
function date_infos() {
var days= new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");
var places= new Array("HAWAI","CANADA","BRAZIL","ENGLAND","FRANCE","KOWEIT","INDIA","CHINA","AUSTRALIA");
var decs= new Array(-600,-360,-180,0,60,180,330,480,600);
var flags= new Array("flag11.jpg","flag8.jpg","flag10.jpg","flag1.jpg","flag0.jpg","flag13.jpg","flag14.jpg","flag12.jpg","flag5.jpg");
var msg='';
//..........................(User/localTime)
var today= new Date();
var HH0= today.getHours();
var MM0= today.getMinutes();
var SS0= today.getSeconds();
var DD0= today.getDay();
//..........................(GMT/UTC)
var dec=today.getTimezoneOffset();
HH0= HH0+Math.floor(dec/60);
MM0= MM0+dec%60;
          if (MM0<0) {HH0= HH0-1; MM0= 60-MM0;}
          if (MM0>60) {HH0= HH0+1; MM0= MM0-60;}
          if (HH0<0) {DD0= DD0-1; HH0= 24+HH0;} //......(day previous)
          if (HH0>=24) {DD0= DD0+1; HH0= HH0-24;}//......(day next)
if (DD0<0) {DD0=6;}
if (DD0>6) {DD0=0;}
msg= "GMT-UTC (Droitwich/England)\n=================\n";
msg +=days[DD0]+" = "+HH0+":"+MM0+":"+SS0;
alert(msg);
//..........................(TIME LAGS)
    msg="<table border align=center>";
    msg += "<tr><td align=center>Location</td><td align=center>(UTC time)</td>";
    msg += "<td align=center>Day</td><td align=center>Local Time</td></tr>";
    for (i=0; i<9; i++) {
    dec=decs[i]; //......(positif ou negatif)
    var DD=DD0; var HH= HH0; var MM= MM0;
    HH= HH+Math.floor(dec/60);
    MM= MM+dec%60;
          if (MM<0) {HH= HH-1; MM= 60-MM;}
          if (MM>60) {HH= HH+1; MM= MM-60;}
          if (HH<0) {DD= DD-1; HH= 24+HH;} //......(day previous)
          if (HH>=24) {DD= DD+1; HH= HH-24;} //......(day next)
    if (DD<0) {DD=6;}
    if (DD>6) {DD=0;}
     msg += "<tr><td align=left><img src="+flags[i]+">&nbsp;"+places[i]+"</td>";
     msg += "<td align=center>(UTC"+dec+")</td><td align=center>"+days[DD]+"</td>";
     msg += "<td align=center>"+HH+":"+ MM +":"+ SS0 +"</td></tr>";}
msg +="</table>"; 
document.write(msg);}
--></script></head>
<body>
<font color=black><font size=2><p>
Free JavaScript provided by ©2004-<a href="http://gilles.saunier.free.fr">VB'Breizh</a><p>
<hr><p>
<script>date_infos()</script>
<p></body></html>

Conclusion :


Demo et variantes sur le site de VB'Breizh (http://gilles;saunier.free.fr)

Codes Sources

A voir également

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.