Lav et ur til din hjemmeside
|
Velkommen til I denne artikel skal du lære at lave et digitalt ur som du kan sætte ind på din side. Til dette skal vi bruge en javascript funktion som hedder "Date()" som henter dagsdato. Ud fra den kan vi så hente de forskellige elementer(timer, sekunder osv...). Vi starter ud med vores grundkode:
Det vi har gjort indtil videre er egentligt bare at lave et skelet som vi skal fylde ud. Vi har lavet en funktion som hedder "klokken" det er den funktion vi skal bruge til at lave vores ur. Så har vi lavet et lag som hedder "visUr" det i det lag vi skal vise klokken. Nu skal vi igang med at fylde noget ind i vores funktion. Det første vi gør er at smide "Date()" ind i en variabel så vi slipper for at skrive det hver gang. Så vores funktion kommer til at se sådan her ud:
Nu skal vi så til at trække de forskellige elementer ud som vi skal bruge, og vores ur skal vise "TT : MM : SS" TT = Time MM = Minut SS = Sekund Så først laver vi en varibel som indeholder "time".
Det vi gør er at vi bruger getHours() til at hente timetallet ud fra variablen "tid". Så skal vi gøre det sammen med minutter og sekunder.
Nu har vi 3 variabler som indeholder; time, minut og sekund. Nu skal vi bare vise dem frem. Det gør vi ved at sætte "visUr""s "innerHTML" lig med vores variabler, men for at gøre det lettere laver vi en variabel som indeholder hele uret. Læg mærke til at vi adskiller tallene med kolon ( : ).
Hvis du ikke ved hvad; document.getElementById("visUr").value betyder, så kommer der en forklaring her: Vi henter et element frem ved hjælp af elementets "ID" i vores tilfælde har vi lavet et lag som har id="visUr". Det kan vi hente frem vha. "getElementById()". Nu har vi faktisk et ur, men nu skal vi have det til at opdatere sig hvert sekunde, det gør vi vha. "window.setTimeout()". window = udføres i det vindue som koden står i setTimeout = Timeouter winduet (genstarter). setTimeout har 2 parametre; "offer" og "interval". offer = det den skal timeoute interval = hvor ofte den skal timeoute. Vi vil have at vores ur skal genstartes hver sekund for at få uret til at gå "RealTime". Så vores funktion kommer til at se sådan her ud:
her er det vores funktion "klokken" der er offeret, som skal genstartes hver sekund, (der regnes i tusindedele sekund). Altså; 1000/1000 = 1. (1 Sekund). Hvis du har afprøvet koden nu så vil du også vide at den ikke virker. :) Det skyldes at vores funktion er skrevet i "<head></head>". Og som vi alle ved, så udføres funktioner skrevet i head ikke før man kalder dem. Derfor skal vi kalde vores funktion når siden er loadet færdig. Det gøres ganske simpelt med:
Der burde du selv kunne regne ud hvad der sker ;) Nu virker vores ur faktisk fortræffeligt, men hvis lægger mærke til det så viser den ikke cifre hvis tallet er under 10. Altså den skriver f.eks: 20:31:4 i stedet for 20:31:04, det kan vi rette vha et par simple if"er. Vi tjekker bare om variablen er under 10, hvis den er skal der sættes et nul foran. Her gør jeg det kun med "time" så kan du selv gøre det med de to andre.
Så køre vores ur som bare pokker, og her er det færdige resultat.
Det var alt for denne gang, hvis du har spørgsmål til artikle så lad venligst være med skrive det i kommentarerne, opret i stedet en forumtråd. Mvh. Andreas PS: Find flere af de scripts jeg har lavet på www.cases.hotserv.dk Sidst redigeret 13:40 - 25/04/2006 |
|
Kommentarer
Giv din mening tilkende om denne artikel, eller læs andres.Har du spørgsmål eller brug for hjælp til denne artikel henvises du til forummet.
|
fin lille artikel man lære faktis noget om koden men man behøvses vist nok ikke body onload="" :D den får 4/5 |
Oprettet af:
|
|
Hmm. Fin artikkel |
Oprettet af:
|
| Ikke mere feedback? |
Oprettet af:
|
|
Virkelig fed artikel! Den har hjulpet mig meget. Tusind tak :) Du får en stuuur stuur dobbel 5-tal af maarj. :) Sidst redigeret 19:33 - 08/04/2006 |
Oprettet af:
|
| Qwaq: Gu behøver den da <body onLoad="klokken();"> ;) |
Oprettet af:
|
| Ville være rart med et link til et eksempl i dine artikler.. http://www.cases.hotserv.dk/javascript/case006/ :D |
Oprettet af:
|
| ok artikel |
Oprettet af:
|
