/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Nedtælling
Fra : Lars Raaby


Dato : 02-11-03 22:27

Jeg har fundet et script som jeg ikke kan få til at virke.
Skal det stå mellem head og head?
................... der er x dage til min
fødselsdag....................


<script language="JavaScript" type="text/javascript">
<!--
function count() {
now = new Date();
setdate = new Date("Jan 11 2004 12:40:00");

day = (setdate - now) / 1000 / 60 / 60 / 24;
day = Math.round(day);
document.write("Der er " + "<b>" + day + "</b>" + " dage<br>
til min 1 års fødselsdag!");
}
// -->
</script>


--
Med venlig hilsen / Lars Raaby
Unix, MS-DOS, and Windows
(also known as the Good, the Bad, and the Ugly)


 
 
Lasse Reichstein Nie~ (02-11-2003)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 02-11-03 23:08

"Lars Raaby" <No_Antivirus@raaby.dk> writes:

> Jeg har fundet et script som jeg ikke kan få til at virke.
> Skal det stå mellem head og head?

Nej. Det skal stå på det sted i body hvor du vil have teksten til at
stå.

> .................. der er x dage til min
> fødselsdag....................
>
>
> <script language="JavaScript" type="text/javascript">

Du behøver ikke "language"-attributten. Den er "deprecated" i HTML 4
(dvs man anbefales ikke at bruge den).

> <!--

Du behøver ikke HTML-kommentarer i dit Javascript.

> function count() {
> now = new Date();

Sæt "var" foran de variable du definerer i funktionen. Ellers bliver
de globale variable, og det er noget rod.

var now = new Date();

> setdate = new Date("Jan 11 2004 12:40:00");

Hvorfor kl. 12.40? Er det der festen holdes? :)

Du løber an på at brugerens browser forstår teksten på samme måde som
din. Det gør den sikkert, også selvom Januar ikke starter med "Jan" på
hans sprog (næppe et problem for dig). Jeg vil dog anbefale at bruge
en mere sikker måde at angive datoen på, som ikke afhænger af at
forstå en streng.

var setdate = new Date(2004,0,11,12,40); // måneder starter ved 0=januar

>
> day = (setdate - now) / 1000 / 60 / 60 / 24;
> day = Math.round(day);

Du afrunder matematisk. Det vil sige at når der er under en halv
dag til, så siger den "0 dage". Bare for at tjekke at du er sikker
på at det er det du vil.

Den siger også "1 dage". :)

> document.write("Der er " + "<b>" + day + "</b>" + " dage<br>

Du bør escape'e de steder der står "</" inden i Javascripten.
Ifølge HTML-definitionen skal script-elementet stoppe ved den *første*
"</" den møder. De fleste browsere er ikke så fintfølende, men for
en sikkerheds skyld, skift "</b>" til "<\/b>".

> til min 1 års fødselsdag!");

Tillykke med det :)

/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'

Lars Raaby (03-11-2003)
Kommentar
Fra : Lars Raaby


Dato : 03-11-03 19:38

Lasse Reichstein Nielsen skrev bl.a.:
> "Lars Raaby" <No_Antivirus@raaby.dk> writes:
>
>> Jeg har fundet et script som jeg ikke kan få til at virke.
>> Skal det stå mellem head og head?
>
> Nej. Det skal stå på det sted i body hvor du vil have teksten
> til at
> stå.
>
Jeg har sat det mellem head>head

og i body
<script>count()</script>

>>
>> til min 1 års fødselsdag!");
>
> Tillykke med det :)
>
Tak men det er nu til en hjemmeside for mit kommende barn. Og tak
for hjælpen.

/Lars
--
Rødkjærsbro ByNet
- nu i farver.....
www.8840.dk


Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste