/ 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
Javascript i firefox
Fra : Jacob Jensen


Dato : 17-08-05 11:38

Hej, jeg her blevet henvist hertil fra dk.edb.internet.software.browser.

Jeg har et problem med firefox :) Jeg har et javascript som kun vil køre
hvis jeg angiver doctypen til transitional html 4.01. Så snart jeg angiver
den til strict html 4.01 vil firefox ikke have med mit script at gøre.
Hvordan kan det være? IE tager begge dele. Jeg vil gerne have at min side
overholder strict html 4.01.

Jeg har prøvet med et lille script som blot laver en enkelt document.write,
det kører fint. Men så snart scriptet "gør lidt mere" dur det ikke.

Her er en test-side som volder problemer:
Billedet skal bevæge sig.
http://home20.inet.tele.dk/omo/test/html_with_script.htm

Jeg har skrevet begge doctyper i htm-filen så i nemt kan udskifte ved at
kommentere den ene ud.

Jacob




 
 
Ryan Kristensen (17-08-2005)
Kommentar
Fra : Ryan Kristensen


Dato : 17-08-05 13:22

On Wed, 17 Aug 2005 12:38:27 +0200, Jacob Jensen <omo@adslhome.dk> wrote:

> Jeg har et problem med firefox :) Jeg har et javascript som kun vil køre
> hvis jeg angiver doctypen til transitional html 4.01. Så snart jeg
> angiver
> den til strict html 4.01 vil firefox ikke have med mit script at gøre.
> Hvordan kan det være? IE tager begge dele. Jeg vil gerne have at min side
> overholder strict html 4.01.

Du vil placere din span ved at ændre css egenskaber, men glemmer at angive
enheder.
IE fortolker left:50 som left:50px, og det har så desværre fået en del til
at tro, at man ikke behøver angive enheder. Det er kun hvis værdien er 0
du kan undlade enhed. Ellers skal browseren gætte om man mener 50px, 50%,
50em, 50cm o.l. Mozilla i standard mode undlader at gætte, hvorimod IE
altid forsøger at gætte hvad man mener.
Skriv i stedet: picture.style.left='50px';

--
Ryan Kristensen

Jacob Jensen (17-08-2005)
Kommentar
Fra : Jacob Jensen


Dato : 17-08-05 17:30

> IE fortolker left:50 som left:50px, og det har så desværre fået en del til
> at tro, at man ikke behøver angive enheder. Det er kun hvis værdien er 0
> du kan undlade enhed. Ellers skal browseren gætte om man mener 50px, 50%,
> 50em, 50cm o.l. Mozilla i standard mode undlader at gætte, hvorimod IE
> altid forsøger at gætte hvad man mener.
> Skriv i stedet: picture.style.left='50px';

Tusind tak. Det hjalp. Jeg beregner enhederne du fra en formel, så jeg har
skrev formel+"px" nu og det funger. Hvor præcist er javascript-sproget
egentligt defineret? Er der nogle der kender til dokumenter om javascript?
For mig virker det meget vagt formuleret meget af det man finder.

Jacob



Ryan Kristensen (17-08-2005)
Kommentar
Fra : Ryan Kristensen


Dato : 17-08-05 19:38

On Wed, 17 Aug 2005 18:30:02 +0200, Jacob Jensen <omo@adslhome.dk> wrote:

> Er der nogle der kender til dokumenter om javascript?
> For mig virker det meget vagt formuleret meget af det man finder.

Du behøver ikke gå så forfærdeligt langt tilbage i gruppen for at få svar
på det.
I søndags blev der oprettet en tråd med emnet "javascript reference...
hvor?"
Prøv at se svaret.

--
Ryan Kristensen

Jacob Jensen (17-08-2005)
Kommentar
Fra : Jacob Jensen


Dato : 17-08-05 20:21

> Du behøver ikke gå så forfærdeligt langt tilbage i gruppen for at få svar
> på det. I søndags blev der oprettet en tråd med emnet "javascript
> reference... hvor?" Prøv at se svaret.

Sorry, der var jeg FOR doven.

Jacob



Jacob Jensen (17-08-2005)
Kommentar
Fra : Jacob Jensen


Dato : 17-08-05 19:05

> Skriv i stedet: picture.style.left='50px';

Egentligt sjovt at jeg kan validere fint uden enheder nogle steder.
F.eks. i en tabels cellspacing.

Jacob



Ryan Kristensen (17-08-2005)
Kommentar
Fra : Ryan Kristensen


Dato : 17-08-05 19:34

On Wed, 17 Aug 2005 20:05:20 +0200, Jacob Jensen <omo@adslhome.dk> wrote:

>> Skriv i stedet: picture.style.left='50px';
>
> Egentligt sjovt at jeg kan validere fint uden enheder nogle steder.
> F.eks. i en tabels cellspacing.

I html skal du ikke angive enhed, med mindre du vil angive størrelsen i
procent.
F.eks. <img width="100" height="90%" src="billede.jpg"> er gyldig html, og
vil give et billede, hvor bredden er 100px og højden er 90% af billedets
højde (bemærk at det ikke er nogen god idé, at skalere billeder på den
måde).

Det samme gør sig gældende ved cellspacing:
<table cellspacing="5"> giver derfor en cellspacing på 5px.

Når du vha. javascript vil ændre på css-egenskaber
(document.getElementById('element').style), så skal du bruge enhed.
Hvis du derimod vil ændre html-egenskaber, så skal du kun angive enhed,
hvis det ikke skal være px. f.eks.
document.getElementById('billede').width = '100';


--
Ryan Kristensen

Lasse Reichstein Nie~ (18-08-2005)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 18-08-05 16:18

"Jacob Jensen" <omo@adslhome.dk> writes:

>> Skriv i stedet: picture.style.left='50px';
>
> Egentligt sjovt at jeg kan validere fint uden enheder nogle steder.
> F.eks. i en tabels cellspacing.

Det er forskellen på angivelser af længder i HTML og i CSS.

En HTML-længde er enten på formen "10" (underforstået pixels) eller
"10%". Det er en fejl at angive en enhed.

En CSS-længde er på en af formerne "10%", "10cm", "10px", "10em",
etc. Enheden er påkrævet (med den ligegyldige undtagelse hvor værdien
er 0, men glem den og brug altid enhed).

De fleste HTML-attributter er HTML-længeder, mens CSS-længder bruges
i CSS-stylesheets og i "style"-attributten. Så:

<img src=".." alt=".." width="100" style="height:100px">

er korrekt angivet (men grimt! Brug helst CSS, men vær i det mindste
konsekvent :)

/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.'

Jacob Jensen (18-08-2005)
Kommentar
Fra : Jacob Jensen


Dato : 18-08-05 18:39

>> Egentligt sjovt at jeg kan validere fint uden enheder nogle steder.
>> F.eks. i en tabels cellspacing.
>
> Det er forskellen på angivelser af længder i HTML og i CSS.

Ja, men lige netop <table cellspacing="xxx"> er vel html? Jeg har også været
ude for andre ting hvor validator.w3.org ikke er SÅ strengent som den godt
kunne være.

Jacob



Jens Gyldenkærne Cla~ (18-08-2005)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 18-08-05 22:37

Jacob Jensen skrev:

>> Det er forskellen på angivelser af længder i HTML og i CSS.
>
> Ja, men lige netop <table cellspacing="xxx"> er vel html?

Netop - og derfor skal der ikke enheder på. Det er helt i tråd med
såvel Lasses som Ryans indlæg.

> Jeg har også været ude for andre ting hvor validator.w3.org ikke
> er SÅ strengent som den godt kunne være.

Hvad mener du? Der er ikke mangel på stringens i validatoren.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Jacob Jensen (19-08-2005)
Kommentar
Fra : Jacob Jensen


Dato : 19-08-05 09:05

> Netop - og derfor skal der ikke enheder på. Det er helt i tråd med
> såvel Lasses som Ryans indlæg.

I skriver det er en fejl at angive enhed, men siden valideres som html 4.01
strict både med og uden enhed.

> Hvad mener du? Der er ikke mangel på stringens i validatoren.

Et eksempel er ovenstående. Et andet er følgende (jeg vil mene at min <p>
tag skal afsluttes):

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>

<head>
<title>
Troldepus hjemmeside
</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<p>Noget tekst
</body>
</html>

Koden findes også her (igen kan den ikke validere pga. TDC's kode):
http://home20.inet.tele.dk/omo/test/p_afsluttes_ikke.htm

Jacob



Erik Ginnerskov (19-08-2005)
Kommentar
Fra : Erik Ginnerskov


Dato : 19-08-05 23:20

Jacob Jensen wrote:

> Et eksempel er ovenstående. Et andet er følgende (jeg vil mene at min
> <p> tag skal afsluttes):
>
> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">

Allerede her afslører du, hvorfor du får vildledende valideringsresultat. Du
har ikke fortalt validatoren, hvilken DTD (Dokument Type Declaration) dit
dokument skal holdes op mod. Ovenstående kodelinje burde se sådan ud:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

Eller

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://html-faq.dk/



Jacob Jensen (20-08-2005)
Kommentar
Fra : Jacob Jensen


Dato : 20-08-05 11:06

> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
> "http://www.w3.org/TR/html4/strict.dtd">

aha

Jacob



Knud Gert Ellentoft (20-08-2005)
Kommentar
Fra : Knud Gert Ellentoft


Dato : 20-08-05 13:43

Jacob Jensen skrev:

>aha

Tjah, allerede den 16.08 fik du at vide, at din doctype var
forkert i
news:p874g1defpv4b8jme3dnekobn2c545ti7t@dtext.news.tele.dk
--
Knud
Topposter du svar, så ryger du på min ignoreringsliste.
Svar under det du citerer og citer kun det du svarer på - tak.
http://usenet.dk/netikette/citatteknik.html

Jacob Jensen (20-08-2005)
Kommentar
Fra : Jacob Jensen


Dato : 20-08-05 14:09

> Tjah, allerede den 16.08 fik du at vide, at din doctype var
> forkert i
> news:p874g1defpv4b8jme3dnekobn2c545ti7t@dtext.news.tele.dk

ja, jeg ved det :)

Men hvor meget ændrer det egetnligt? Jeg fik ikke en fejl om at min doctype
var forkert af validatoren og den genkendte den som "strict".

Jacob



Knud Gert Ellentoft (20-08-2005)
Kommentar
Fra : Knud Gert Ellentoft


Dato : 20-08-05 15:57

Jacob Jensen skrev:

>Men hvor meget ændrer det egetnligt?

Måden browserne viser siden på.

>Jeg fik ikke en fejl om at min doctype
>var forkert af validatoren og den genkendte den som "strict"

Validatorer er dumme, betragt det som hjælp til selvhjælp.
--
Knud
Topposter du svar, så ryger du på min ignoreringsliste.
Svar under det du citerer og citer kun det du svarer på - tak.
http://usenet.dk/netikette/citatteknik.html

Jens Gyldenkærne Cla~ (19-08-2005)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 19-08-05 20:49

Jacob Jensen skrev:

> I skriver det er en fejl at angive enhed, men siden valideres
> som html 4.01 strict både med og uden enhed.

Det er mærkeligt. Indholdet i html-parametre bliver tilsyneladende
kun typetjekket (skal være CDATA) - og ikke tjekket for om det er
korrekte værdier.

> Et eksempel er ovenstående. Et andet er følgende (jeg vil mene
> at min <p> tag skal afsluttes):

Der tager du til gengæld fejl. P-elementet har valgfri slutkode (se
evt. definitionen her:
<http://www.w3.org/TR/html401/struct/text.html#edef-P> - det er
O'et 2 tegn efter P der angiver valgfri (Optional) slutkode).

I xhtml er valgfriheden i sagens natur væk - her skal alle
elementer lukkes.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Jacob Jensen (19-08-2005)
Kommentar
Fra : Jacob Jensen


Dato : 19-08-05 23:33

> Der tager du til gengæld fejl. P-elementet har valgfri slutkode (se
> evt. definitionen her:
> <http://www.w3.org/TR/html401/struct/text.html#edef-P> - det er
> O'et 2 tegn efter P der angiver valgfri (Optional) slutkode).
>
> I xhtml er valgfriheden i sagens natur væk - her skal alle
> elementer lukkes.

Ok, så er det også derfor den validerer <br> uden afslutning (<br />)?

Jacob



Johnny Winther Ronne~ (20-08-2005)
Kommentar
Fra : Johnny Winther Ronne~


Dato : 20-08-05 20:23

In news:<Xns96B7DDFA2C463jcdmfdk@gyrosmod.cybercity.dk>
Jens Gyldenkærne Clausen typed:
> Jacob Jensen skrev:
>
>> I skriver det er en fejl at angive enhed, men siden valideres
>> som html 4.01 strict både med og uden enhed.
>
> Det er mærkeligt. Indholdet i html-parametre bliver tilsyneladende
> kun typetjekket (skal være CDATA) - og ikke tjekket for om det er
> korrekte værdier.
>

Validatoren er blevet opdateret for ca. en uge siden måtte man gerne
sætte bredde på tabel i html men ikke højde, nu fejler begge dele.

Så der vil komme mange spørgsmål om validering i den nærmeste fremtid.
plejer er nemlig død

Med venlig hilsen
Johnny Winther Ronnenberg
--
Internettet er for alle!
http://80.62.61.212/webuseability/index.asp



Søg
Reklame
Statistik
Spørgsmål : 177482
Tips : 31964
Nyheder : 719565
Indlæg : 6408387
Brugere : 218883

Månedens bedste
Årets bedste
Sidste års bedste