Avatar billede alvira Nybegynder
18. juli 2004 - 15:16 Der er 8 kommentarer og
1 løsning

Script til ur der tæller "op ad"?

Så er den gal igen;
Nu vil min bedre halvdel gerne gave et ”ur” der tæller sekunder, minutter, timer, dage, måneder og år fra det tidspunkt vores datter blev ført. Altså så det vises på denne måde:

Det skal nærmest vises som et digital ur, i en ”boks” som så vises således:
1 år
8 måneder
xx dage
xx timer
xx minutter
xx sekunder


Man skal så kunne se sekunder med videre tikke…..

Tiden skal være startende den 22. november 2002 kl. 21:17

Nogen der har/kan lave et sådant script/program?

Jeg er lidt lost – og den må meget gerne være angivet med 24 timer – altså danske tider!

Der er mulighed for både database, php, java, og alm. html

Jeg belønner denne opgave med 100 point!

//Alvira
Avatar billede cdc Novice
18. juli 2004 - 15:31 #1
Avatar billede roenving Novice
18. juli 2004 - 15:33 #2
Så får jeg en change for at udnytte mine Date-udvidelser:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Vis alder</title>
<meta name="keywords" content="roenving,http://www.eksperten.dk/spm/520879">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
html,body{height:100%;margin:0px;border:0px;padding:0px;font-family:tahoma,verdana,arial,sans-serif;font-size:small;}
#minDiv{text-align:center;padding:3px;color:red;font-weight:bold;}
#minSpan{color:green;font-weight:normal;}
</style>
<script language="javascript" type="text/javascript">
Date.prototype.age = function(d,ignoreTime){
  if(this.age.arguments.length==0)d = new Date(0);
  if(typeof d != 'object' || !d.getTime){
    return argsFailure(typeof d);
  }
  ignoreTime = (this.age.arguments.length==1||!this.age.arguments[1])?false:true;
  var c = [1000,60,60,24];
  var t = new Array();
  t[t.length] = this.getMilliseconds() - d.getMilliseconds();
  t[t.length] = this.getSeconds() - d.getSeconds();
  t[t.length] = this.getMinutes() - d.getMinutes();
  t[t.length] = this.getHours() - d.getHours();
  t[t.length] = this.getDate() - d.getDate();
  t[t.length] = this.getMonth() - d.getMonth();
  t[t.length] = this.getFullYear() - d.getFullYear();
  for(i=0;4>i;i++){
    if(ignoreTime){
      t[i] = 0;
    }else if(0>t[i]){
      t[i] += c[i];
      t[i+1]--;
    }
  }
  if(0>t[4]){
    t[4] += new Date(this.getFullYear(),this.getMonth(),0).getDate();
    t[5]--;
  }
  if(0>t[5]){
    t[5] += 12;
    t[6]--;
  }
  return [t[6],t[5],t[4],t[3],t[2],t[1],t[0]];
}
var dato = new Date(2002,10,22,21,17,00);

function setTid(){
  var alder = new Date().age(dato);
  var txt = alder[0] + " år<br>" + alder[1] + " måneder<br>" + alder[2] + " dage<br>" + alder[3] + " timer<br>" + alder[4] + " minutter<br>" + alder[5] + " sekunder";
  document.getElementById('minSpan').innerHTML = txt;
}
</script>
</head>
<body onresize onload="setTid();setInterval('setTid()',1000);">
<br>
<div id="minDiv">Vores datter er nu:<br>
<span id="minSpan">En span-tekst</span></div>

</body>

</html>
Avatar billede alvira Nybegynder
18. juli 2004 - 15:54 #3
Jamen roenving
Det var lige det jeg søgte - så 100 point til dig!

Tusind tak for det hurtige reply og et funktionel script!

//Alvira
Avatar billede 3xm Nybegynder
18. juli 2004 - 16:01 #4
(jeg siger noget for lettere at kunne finde dette vidunderlige script af roenving igen)

=)
Avatar billede roenving Novice
18. juli 2004 - 16:01 #5
Velbekomme '-)
Avatar billede roenving Novice
18. juli 2004 - 16:04 #6
Der er dog en fejl i mit script, fordi jeg har hevet det ud af en sammenhæng, så nogle linjer skal tilpasses:

De, som ser sådan ud:

  if(typeof d != 'object' || !d.getTime){
    return argsFailure(typeof d);
  }

-- skal udskiftes til:

  if(typeof d != 'object' || !d.getTime){
    return [0,0,0,0,0,0,0];
  }

-- det skulle ikke betyde noget i det pågældende script, da vi jo netop skaber et Date-objekt selv, men andre kunne måske komme til at udnytte age-funktionen på andre måder !-)
Avatar billede roenving Novice
18. juli 2004 - 16:05 #7
-- og tak for point ;~}
Avatar billede buddy45 Juniormester
18. juli 2004 - 16:13 #8
Hvis jeg indsætter dags dato for x antal år siden mangler der en måned?
Avatar billede roenving Novice
18. juli 2004 - 16:16 #9
Javascript bruger måneder som et array, så det skal, som du også kan se ovenfor angives med en mindre en månedsnummeret, så januar er måned 0 og december måned 11 !-)

>>3xm

-- jeg regner med at gøre det tilgængeligt snarest, men mine betatestere fandt lige et par problematikker, som jeg skal have adresseret !o]
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