Avatar billede trophymanager Nybegynder
16. december 2005 - 18:40 Der er 15 kommentarer og
2 løsninger

Script der kører videre på servertiden

Hep

Jeg har virkelig brug for et script der kan få tiden til at "gå", efter at jeg har hentet servertiden med date(Y:M:D H:i:s). Det skal bruges til en form for "auktionsside", således at folk kan følge med i tiden, derfor er det selvf vigtigt at det går præcist efter servertiden og ikke klientens egen.
Avatar billede elskermad.dk Nybegynder
16. december 2005 - 18:43 #1
du kan jo udskriver tiden med det dynamiske sprog du skriver koden i (så bliver det servertid) også få javascript til at tælle ned bagefter...?
Avatar billede trophymanager Nybegynder
16. december 2005 - 18:51 #2
Jep. Men er der ikke nogen der har et bud på et sådant script - for jeg kan ikke javascripte... :)
Avatar billede trophymanager Nybegynder
16. december 2005 - 19:05 #3
NB Det skal ikke være et nedtællingsur, men bare et ur der går så det matcher med de deadlines der fremgår af auktionen.
Avatar billede elskermad.dk Nybegynder
16. december 2005 - 19:31 #4
Jeg er heller ikke javascriptkoder (langt fra) men en idé kunne være at dele tiden op i 3 spans

<span id='tid_time'>timetallet</span>
<span id='tid_minut'>minuttallet</span>
<span id='tid_sekund'>sekundtallet</span>

og lave en js-funktion som tæller sekundtallet ned hvert sekund: (skal placeres i headeren)

<script language='javascript' type='text/javascript'>
  function countdown() {
      var elm_time = document.getElementById('tid_time').innerHTML
      var elm_minut = document.getElementById('tid_minut').innerHTML
      var elm_sekund = document.getElementById('tid_sekund').innerHTML

      elm_sekund = (elm_sekund==0)? countdown_minut() : elm_sekund--;

      setTimeout('countdown()',1000);
  }

  function countdown_minut() {
      var elm_time = document.getElementById('tid_time').innerHTML
      var elm_minut = document.getElementById('tid_minut').innerHTML
      var elm_sekund = document.getElementById('tid_sekund').innerHTML

      elm_sekund = 59;

      elm_minut = (elm_minut==0)? countdown_time() : elm_minut--;
  }

  function countdown_time() {
      var elm_time = document.getElementById('tid_time').innerHTML
      var elm_minut = document.getElementById('tid_minut').innerHTML
      var elm_sekund = document.getElementById('tid_sekund').innerHTML

      elm_minut = 59;

      elm_time = (elm_time==0)? 0 : elm_time--;
  }

  window.onload = countdown
</script>

Men som sagt kan det helt sikkert laves bedre, og det er utestet, så der kan også være fejl i det :)
Avatar billede elskermad.dk Nybegynder
16. december 2005 - 19:32 #5
argh, nu kom jeg jo til at lave nedtælling alligevel :P men så skal det jo bare vendes om hehe
Avatar billede trophymanager Nybegynder
17. december 2005 - 17:44 #6
bum bum - synes ikke rigtig den laver noget :/
Avatar billede roenving Novice
18. december 2005 - 04:48 #7
Der skrives ikke tilbage til elementerne, men ideen kan sagtens bruges !-)

-- hver gang, der står 'elm_xxx =' skal der i stedet stå:

document.getElementById('tid_xxx').innerHTML = !o]

-- der skal så selvfølgelig checkes for at sekund- og minut-tal er 59 m.m.
Avatar billede trophymanager Nybegynder
20. december 2005 - 22:16 #8
øhm - i stedet for fx var elm_time = documentbla bla bla?
Avatar billede roenving Novice
21. december 2005 - 08:09 #9
Nej, kun tildelingen af nye værdier, f.eks.:

  function countdown_time() {
      var elm_time = +document.getElementById('tid_time').innerHTML;
      var elm_minut = +document.getElementById('tid_minut').innerHTML;
      var elm_sekund = +document.getElementById('tid_sekund').innerHTML;

      document.getElementById('tid_minut').innerHTML = 59;

      document.getElementById('tid_time').innerHTML = (elm_time==0)? 23 : elm_time--;
  }

-- og hvis man initierer med en tidsforskel, kan man med fordel bruge computerens ur og så hele tiden skrive en korrigeret tid, måske kan du have gavn af mine javascript Date-objekt-udvidelser: http://roenving.users.whitehat.dk/date/roenvingDate.html !-)
Avatar billede roenving Novice
21. december 2005 - 13:00 #10
-- og hov, der skal da lige ændres værdi før tilskrivningen:

      document.getElementById('tid_time').innerHTML = (elm_time==0)? 23 : --elm_time;
Avatar billede trophymanager Nybegynder
21. december 2005 - 21:46 #11
hmm - der er stadig ikke nogen der tæller :/

<html>
<head>
<script language='javascript' type='text/javascript'>
  function countdown() {
      var elm_time = document.getElementById('tid_time').innerHTML
      var elm_minut = document.getElementById('tid_minut').innerHTML
      var elm_sekund = document.getElementById('tid_sekund').innerHTML

      elm_sekund = (elm_sekund==59)? countdown_minut() : elm_sekund++;

      setTimeout('countdown()',1);
  }

  function countdown_minut() {
      var elm_time = document.getElementById('tid_time').innerHTML
      var elm_minut = document.getElementById('tid_minut').innerHTML
      var elm_sekund = document.getElementById('tid_sekund').innerHTML

      elm_sekund = 0;

      elm_minut = (elm_minut==59)? countdown_time() : elm_minut++;
  }

function countdown_time() {
      var elm_time = document.getElementById('tid_time').innerHTML;
      var elm_minut = document.getElementById('tid_minut').innerHTML;
      var elm_sekund = document.getElementById('tid_sekund').innerHTML;

      document.getElementById('tid_minut').innerHTML = 0;

      document.getElementById('tid_time').innerHTML = (elm_time==23)? 0 : elm_time++;
  }


  window.onload = countdown
</script>
</head>
<body>

<span id='tid_time'>1</span>
<span id='tid_minut'>11</span>
<span id='tid_sekund'>11</span>

</body>
</html>
Avatar billede roenving Novice
24. december 2005 - 22:39 #12
Hrm, der var jo også liiige et par tavetosser m.v.

Sådan (Nedtælling, men det er ikke det vigtigste !-)

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script language='javascript' type='text/javascript'>
  function countdown() {
      var elm_sekund = document.getElementById('tid_sekund').innerHTML

      document.getElementById('tid_sekund').innerHTML = (elm_sekund==0)? countdown_minut() : twoDigits(--elm_sekund);

      setTimeout('countdown()',1000);
  }

  function countdown_minut() {
      var elm_minut = document.getElementById('tid_minut').innerHTML

      document.getElementById('tid_minut').innerHTML = (elm_minut==0)? countdown_time() : twoDigits(--elm_minut);
     
      return 59;
  }

function countdown_time() {
      var elm_time = document.getElementById('tid_time').innerHTML;

      document.getElementById('tid_time').innerHTML = (elm_time==23)? "00" : twoDigits(--elm_time);
     
      return 59;
  }
function twoDigits(num){
  return num>9 ? num : "0" + num;
}

  window.onload = countdown
</script>
<title>Nedtælling fra indhold</title>
</head>
<body>

<span id='tid_time'>01</span>:<span id='tid_minut'>01</span>:<span id='tid_sekund'>11</span>

</body>
</html>
Avatar billede trophymanager Nybegynder
26. december 2005 - 12:41 #13
perfekt det virker - smit et svar begge to.
Avatar billede elskermad.dk Nybegynder
26. december 2005 - 14:00 #14
:)
Avatar billede roenving Novice
26. december 2005 - 14:15 #15
Velbekomme '-)
Avatar billede trophymanager Nybegynder
26. december 2005 - 21:42 #16
takker igen.
Avatar billede roenving Novice
27. december 2005 - 13:24 #17
-- og jeg takker for point ;~}
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