Avatar billede PHPnQrd Nybegynder
02. februar 2012 - 13:00 Der er 4 kommentarer og
1 løsning

Countdown fra unixtime php

Hejsa, jeg har denne countdown, den virker også ganske fint, men når eg opdaterer siden, så nulstilles countdown igen.. Hvordan dælen kan jeg fixe sådan den hele tiden er korrekt i tid??


<script>var now = new Date();
        var timestamp = (<?=$row['slutter'];?> - (now.getTime() / 1000).toFixed(0));



function component(x, v) {
    return Math.floor(x / v);
}

setInterval(function() {
   
    timestamp--;
   
    var days    = component(timestamp, 24 * 60 * 60),
        hours  = component(timestamp,      60 * 60) % 24,
        minutes = component(timestamp,          60) % 60,
        seconds = component(timestamp,            1) % 60;
   
    $('#c').html("Slutter om " +days + " dag(e), " + hours + " time(r) og " + minutes + " minut(ter)");
   
}, 1000);
</script>
Avatar billede olebole Juniormester
02. februar 2012 - 14:56 #1
<ole>

Hvad gør du i denne linje - og hvorfor?

var timestamp = (<?=$row['slutter'];?> - (now.getTime() / 1000).toFixed(0));

Det ligner ikke et format, JS kan regne på.

/mvh
</bole>
Avatar billede olebole Juniormester
02. februar 2012 - 15:47 #2
Ahhh ... nu forstår jeg  =)

Jeg kan til gengæld ikke forstå, hvad du mener med, at tidsrummet skulle nulstilles ved opdatering af siden. Jeg får et helt korrekt resultat med flg. kode:

<div id="c">&nbsp;</div>

<script type="text/javascript">
var now = new Date();
var timestamp = (<?php echo strtotime('next thursday') ?> - (now.getTime() / 1000).toFixed(0));
function component(x, v) {
    return Math.floor(x / v);
}
setInterval(function() {
    timestamp--;
   
    var days = component(timestamp, 24 * 60 * 60),
        hours = component(timestamp, 60 * 60) % 24,
        minutes = component(timestamp, 60) % 60,
        seconds = component(timestamp, 1) % 60;
   
    document.getElementById("c").firstChild.nodeValue = ("Slutter om " +days + " dag(e), " + hours + " time(r), " + minutes + " minut(ter) og " + seconds + " sekunder.");
}, 1000);
</script>

- og så er der jo ingen grund til, at brugeren skal slæbe hele jQuery ned og hans browser tvinges til at instantiere lib'et. Du kan bare bruge helt almindelig JS/DOM  =)
Avatar billede PHPnQrd Nybegynder
26. maj 2012 - 08:26 #3
Svar ole
Avatar billede olebole Juniormester
27. maj 2012 - 14:53 #4
Ellers tak, jeg samler ikke point. Læg selv et svar og accepter det, så tråden lukkes  =)
Avatar billede PHPnQrd Nybegynder
02. august 2012 - 09:57 #5
lukker
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