webForumDet fria alternativet

klockan ska gå efter servern

6 svar · 329 visningar · startad av ampy

ampyMedlem sedan feb. 20011 512 inlägg
#1

Här är min klocka som kommer från jojoxx.net:

<span id=klocka style="position: absolute;">        </span><br>
<script language="JavaScript">
var elementId = "klocka";
function clock(){
	if (document.layers || document.all || document.getElementById){
		now = new Date();
		h = "0" + now.getHours();
		h = h.substring(h.length-2, h.length);
		min = "0" + now.getMinutes();
		min = min.substring(min.length-2, min.length);
		sec = "0" + now.getSeconds();
		sec = sec.substring(sec.length-2, sec.length);
		time = " " + h + ":" + min + ":" + sec;
		if(document.layers){
			with (document[elementId].document){
				open();
				write(time);
				close();
			}
		} else if (document.all){
			document.all[elementId].innerHTML = time;
		} else if (document.getElementById){
			jxdocrange = document.createRange();
			jxdocrange.setStartBefore(document.getElementById(elementId));
			while (document.getElementById(elementId).hasChildNodes()){
				document.getElementById(elementId).removeChild(document.getElementById(elementId).lastChild);
			}
			document.getElementById(elementId).appendChild(jxdocrange.createContextualFragment(time));
		}
		setTimeout("clock()", 1000);
	}
}
setTimeout("clock()", 1000);
</script>

Denna klocka går efter datorns klocka men jag vill att den ska gå efter serverns klocka. Hur fixar man det?

JojoxxMedlem sedan juni 20004 306 inlägg
#2

Det klarar du inte med enbart clientside JavaScript. Har du tillgång till något serverside-script? Via cgi eller asp kanske?

ampyMedlem sedan feb. 20011 512 inlägg
#3

ASP kan jag använda på servern.

@ndersMedlem sedan juni 200026 914 inlägg
#4

Hmm.

Jag tänkte nog lite fel. Återkommer

ampyMedlem sedan feb. 20011 512 inlägg
#5

Ingen som vet hur man kan göra?

JojoxxMedlem sedan juni 20004 306 inlägg
#6
<span id=klocka style="position: absolute;"></span><br>
<script language="JavaScript">
var elementId = "klocka";
var serverdate=new Date(<%=year(Now)%>,<%=month(Now)-1%>,<%=day(Now)%>,<%=hour(Now)%>,<%=minute(Now)%>,<%=second(Now)%>);
var clientdate=new Date();
var difftime=serverdate-clientdate;
function clock(){
	if (document.layers || document.all || document.getElementById){
		now = new Date(); now = new Date((now-0)+difftime);
		h = "0" + now.getHours();
		h = h.substring(h.length-2, h.length);
		min = "0" + now.getMinutes();
		min = min.substring(min.length-2, min.length);
		sec = "0" + now.getSeconds();
		sec = sec.substring(sec.length-2, sec.length);
		time = " " + h + ":" + min + ":" + sec;
		if(document.layers){
			with (document[elementId].document){
				open();
				write(time);
				close();
			}
		} else if (document.all){
			document.all[elementId].innerHTML = time;
		} else if (document.getElementById){
			jxdocrange = document.createRange();
			jxdocrange.setStartBefore(document.getElementById(elementId));
			while (document.getElementById(elementId).hasChildNodes()){
				document.getElementById(elementId).removeChild(document.getElementById(elementId).lastChild);
			}
			document.getElementById(elementId).appendChild(jxdocrange.createContextualFragment(time));
		}
		setTimeout("clock()", 1000);
	}
}
setTimeout("clock()", 1000);
</script>
ampyMedlem sedan feb. 20011 512 inlägg
#7

Tack så mycket, det funkar!

Genererad på 386 ms · cache AV · v20260730165559-full.f96bc7eb