webForumDet fria alternativet

Räkna tid från ett datum?

JavaScript

5 svar · 277 visningar · startad av Bosse168

Medlem sedan nov. 20031 018 inlägg
Frågan#1

Någon som kan något bra script som räknar ut hur många timmar, minuter och sekunder som det har gått från ett datum (t.ex. 2004-10-27 21:40:26)?

Medlem sedan dec. 20025 483 inlägg
#2
<script type="text/javascript">

var ds = "2004-10-27 21:40:26";

function f() {
    var d  = new Date(ds.replace(/-/g,"\/")),
	c  = new Date(),
	hf = (c - d) / 3600000;
	ha = Math.floor(hf),
	mf = 60 * (hf - ha),
	ma = Math.floor(mf);

    return [ha,ma,Math.floor(60 * (mf - ma))];
}

</script>

Reserverar mig för eventuella nödvändiga modifieringar för "exakta" värden.

:)

Medlem sedan nov. 20031 018 inlägg
#3

Glömde säga att jag vill se tiden ticka framåt när man är på sidan.

Medlem sedan dec. 20025 483 inlägg
#4
<script type="text/javascript">

var ds = "2004-10-27 21:40:26";

function f() {
    var d  = new Date(ds.replace(/-/g,"\/")),
	c  = new Date(),
	hf = (c - d) / 3600000;
	ha = Math.floor(hf),
	mf = 60 * (hf - ha),
	ma = Math.floor(mf);

    document.getElementById("time").innerHTML = [ha,ma,Math.floor(60 * (mf - ma))];
}

window.setInterval("f()", 960);

</script>

<span id="time"></span>

:)

Medlem sedan nov. 20031 018 inlägg
#5

Ok hur gör man för att det ska stå 10 tim 44 min 40 sek?

Medlem sedan dec. 20025 483 inlägg
#6
<script type="text/javascript">

var ds = "2004-10-27 21:40:26";

function f() {
    var d  = new Date(ds.replace(/-/g,"\/")),
	c  = new Date(),
	hf = (c - d) / 3600000;
	ha = Math.floor(hf),
	mf = 60 * (hf - ha),
	ma = Math.floor(mf);

    document.getElementById("time").innerHTML = 
	ha + " tim " + ma + " min " + Math.floor(60 * (mf - ma)) + " sek";
}

window.setInterval("f()", 960);

</script>

<span id="time"></span>

:)

267 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
133 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)