2010-10-07 10 views
0

Je voudrais afficher l'heure actuelle de manière continue mais dans un fuseau horaire différent?Comment afficher l'heure actuelle de manière continue dans un fuseau horaire différent?

Le code suivant affichera l'heure actuelle en continu. Puis-je mettre à jour pour obtenir l'heure dans un fuseau horaire différent.?

<script type="text/javascript"> 
    function ShowTime() { 
     var dt = new Date(); 
     document.getElementById("<%= TextBox1.ClientID %>").value 
     = dt.toLocaleTimeString(); 
     window.setTimeout("ShowTime()", 1000); 
    } 
</script> 
<asp:TextBox ID="TextBox1" runat="server" CssClass="time"></asp:TextBox> 

<script type="text/javascript"> 
    // a startup script to put everything in motion 
    window.setTimeout("ShowTime()", 1000); 
</script> 

S'il vous plaît aider
Merci
Joe

+1

Veuillez ne pas passer de chaînes à 'setTimeout' et' setInterval'! Passez _functions_. Comme ceci: 'window.setTimeout (ShowTime, 1000);' –

Répondre

0

La bibliothèque datejs pourrait être un bon point de départ . Il y a une méthode getTimezoneOffset qui vous donne le décalage temporel pour un fuseau horaire donné.

En outre, pensez à utiliser setInterval au lieu de setTimeout.

0

Convertir la date en horodatage et ajouter les heures pour le fuseau horaire indiqué.

Convertissez à nouveau le tmestamp.

var currentdate = 20101007163045

horodatage actuel = temps (currentdate);

un autre fuseau horaire + 3 heures var = expectedtimestamp horodatage + temps (3 heures)

expecteddate = Date (expectedtimestamp).

Ceci est un algorithme. vérifiez vos syntaxes

+0

Ne fonctionne pas, car le décalage dépend de la date et l'année, et parfois le pays. – Cine