Avatar billede shjorth Nybegynder
24. august 2010 - 11:31 Der er 7 kommentarer og
1 løsning

Live clock (JS)

Hejsa

Jeg skal bruge et tidspunkt i headeren på min side. Altså et javascript ur: 11:29:19

Det er som sådan nemt nok at finde derude, men problemet er at det istedet for at vise den akutelle computers tid, så skal det vise Dansk tid, uanset hvor man befinder sig.
Jeg tænker det kan gøres ved at lave en "countup" ud fra tidspunktet siden blev loadet på. Evt ved at passe et unix timestamp ind i scriptet.

Er der nogen der kender til noget lign derude ?

Mange tak :)
Avatar billede claes57 Ekspert
24. august 2010 - 11:58 #1
dette script http://www.java-scripts.net/javascripts/World-Time-for-22-World-Capitals.phtml
viser tiden i 22 hovedstæder - bla berlin. Så den kode skal bare rettes lidt til.
Avatar billede shjorth Nybegynder
24. august 2010 - 12:04 #2
Hej claes.

Problemet er at 22 hovedstader ikke er nok.. Det skal gælde ALLE tænkelige tidszoner. Tiden må med andre ord KUN vises i UTC+2. og skal være nøjagtig ens for alle
Avatar billede shjorth Nybegynder
24. august 2010 - 12:04 #3
- En anden løsning (hvis det er muligt i JS) er at bruge serverens tid, frem for browserens tid ?
Avatar billede intenz Novice
24. august 2010 - 12:10 #4
#1
Den bruger jo netop udelukkende javascript, hvilket gør at det en brugeres tid der benyttes, og ikke serverens. Herudover er scriptet noget skrammel.

Du kan gøre sådan:
<script>
function updateClock (ts) {
    var date = new Date(ts*1000);

    var hours = date.getHours();
    if (hours < 10) hours = '0'+hours;

    var minutes = date.getMinutes();
    if (minutes < 10) minutes = '0'+minutes;

    var seconds = date.getSeconds();
    if (seconds < 10) seconds = '0'+seconds;
   

    var formattedTime = hours + ':' + minutes + ':' + seconds;

    document.getElementById("timestamp").firstChild.nodeValue = formattedTime;

    setTimeout(function() {updateClock(ts+1);}, 1000)
}

</script>

<body onload="updateClock(1282647835);">
<span id="timestamp">&nbsp;</span>
</body>

Og så sæt dit timestamp som parameter, her sat i onload.
Avatar billede claes57 Ekspert
24. august 2010 - 12:13 #5
du misforstår koden. Den viser tiden i københavn (berlin) + 21 andre steder, og du skal bare reducere koden, så den kun viser den ene.
Koden bruger bla .getUTCHours(), og ud fra den aktuelle tid justerer den så også døgnet, så det passer omkring midnat.
Avatar billede intenz Novice
24. august 2010 - 12:17 #6
#5 -> men hvis du ændrer tiden på din computer, ændres tiden og i scriptet.
Avatar billede claes57 Ekspert
24. august 2010 - 12:17 #7
obs - mit link tager ikke højde for sommertid, så der skal arbejdes lidt mere med koden.
Avatar billede shjorth Nybegynder
24. august 2010 - 12:29 #8
Intenz - Det var lige hvad jeg manglede :) Takker mange gange
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester