Miten saan tämän toimimaan niin että se näyttää servukoneen ajan eikä sen koneen millä sivua katson? Nyt mun mielestäni se menee samaa tahtia sekunnilleen kuin oma koneeni kello vaikka sivusto on eri koneella...
<HTML> <HEAD> <SCRIPT LANGUAGE="JavaScript"> <!-- Beginning of JavaScript - var timerID = null; var timerRunning = false; var id,pause=0,position=0; function stopclock (){ if(timerRunning) clearTimeout(timerID); timerRunning = false; } function showtime () { var now = new Date(); var hours = now.getHours(); var minutes = now.getMinutes(); var seconds = now.getSeconds() var timeValue = "" + ((hours >12) ? hours -12 :hours) timeValue += ((minutes < 10) ? ":0" : ":") + minutes timeValue += ((seconds < 10) ? ":0" : ":") + seconds timeValue += (hours >= 12) ? " P.M." : " A.M." document.clock.face.value = timeValue; timerID = setTimeout("showtime()",1000); timerRunning = true; } function startclock () { stopclock(); showtime(); } // - End of JavaScript - --> </SCRIPT> </HEAD> <body onLoad="startclock()"> <!-- Comments --! 1. To add a clock to your page, add the onLoad="startclock()" to the <BODY> tag. You can also have additional values in the tag, as above. e.g. <BODY BGCOLOR="#FFFFFF" VLINK="#000000" onLoad="startclock()"> 2. Put the lines below wherever you want the clock to appear on your page. --> <form name="clock" onSubmit="0"> <input type="text" name="face" size=13 value=""> </BODY> </HTML>
Javascript suoritetaan vasta käyttäjän koneella, eikä se (tietääkseni) ole missään yhteydessä enää serverin kanssa, joten serveriltä et saa päivitettyä sitä aikaa pelkällä javascriptillä.
Pari mahdollisuutta siihen serverin kellon näyttämiseen kuitenkin saattaisi olla, mutta järkevyydestä en mene takuuseen:
1) Ota aluksi aika serveriltä ja käytä javascriptiä päivittämään kelloa sekunnin välein käyttäjän kellon mukaan (toisin sanoen katsot aluksi mikä on aikaero ja pidät koko ajan aikaeron samana).
2) Päivitä kellon sisältävää osaa sivusta joka sekunti ja ota aika serveriltä.
No voe hel...
Sami kirjoitti:
Javascript suoritetaan vasta käyttäjän koneella, eikä se (tietääkseni) ole missään yhteydessä enää serverin kanssa, joten serveriltä et saa päivitettyä sitä aikaa pelkällä javascriptillä.
Pari mahdollisuutta siihen serverin kellon näyttämiseen kuitenkin saattaisi olla, mutta järkevyydestä en mene takuuseen:
1) Ota aluksi aika serveriltä ja käytä javascriptiä päivittämään kelloa sekunnin välein käyttäjän kellon mukaan (toisin sanoen katsot aluksi mikä on aikaero ja pidät koko ajan aikaeron samana).
2) Päivitä kellon sisältävää osaa sivusta joka sekunti ja ota aika serveriltä.
Ei ole varmaankaan kovin tarkka kello koska kyllä se sivun siirtäminen kuitenkin hetkisen vie, ainakin jos serverillä on ruuhkaa. Ja kerran sekunnissa sivunlatauskin jo hieman serveriä kuormittaa.
Jos serveri tukee PHP:tä, niin aika kannattaa printata sillä.
Aihe on jo aika vanha, joten et voi enää vastata siihen.