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

Kodeord


Reklame
Top 10 brugere
HTML
#NavnPoint
molokyle 11184
Klaudi 5506
bentjuul 3377
severino 2040
smorch 1950
strarup 1525
natmaden 1396
scootergr.. 1320
e.c 1150
10  miritdk 1110
Fra HTML til XHTML
Fra : ScooterGrisen


Dato : 25-01-09 19:50

Hey jeg har lige konverteret min hjemmeside fra HTML 4.01 transitional
til XHTML 1.0 strict.
Det gik fint nok men er det virkelig rigtigt at man ikke kan bruge
javascript i XHTML.

Jeg bruger nope.dk og chart.dk og banner.dk som bruger javasscript til
at lavere et lille billed og sende data fra min hjemmeside til deres
hjemmeside så de kan registere diverse ting.

Jeg prøvede at lægge javascript ind i en funktion men det blev aldrig
helt godt.
Nogen der bruger nope.dk,chart.dk eller banner.dk med XHTML 1.0
strict ?

Hjemmesiden kan ses her: http://mentos.wep.dk

 
 
Philip Nunnegaard (26-01-2009)
Kommentar
Fra : Philip Nunnegaard


Dato : 26-01-09 05:31

"ScooterGrisen" <fedblindkat@yahoo.dk> skrev

> men er det virkelig rigtigt at man ikke kan bruge
> javascript i XHTML.

Jeg har ingen problemer med javascript på mine XHTML-sider.

> Nogen der bruger nope.dk,chart.dk eller banner.dk med XHTML 1.0
> strict ?

Det er heller ikke noget problem - i sig selv.
Når jeg skriver "i sig selv" er det fordi deres kode ikke validerer. Men
counterne virker fint. Det samme med mine egne javascripts.

Valideringsproblemet kan klares ved nogle ændringer i koden [1] (se note).

<script src=''>http://www.chart.dk/js/unified.asp'>
ændres til:
<script type='text/javascript'
src=''>http://www.chart.dk/js/unified.asp'>

<script language='javascript'> ændres til <script type='text/javascript'>
Language-atributten er fra forrige århundrede.

I <noscript>-delen tilføjer man et <p> før <a href=...> og </p> efter </a>.
Desuden skal target-atributten fjernes.

<img src="http://cluster.chart.dk/chart.asp?id=xxxxx" border="0"
alt="Chart.dk">
ændres til:
<img src="http://cluster.chart.dk/chart.asp?id=xxxxx" style="border:0;"
alt="Chart.dk">

Så skulle det validere.

Note:
[1] Muligvis tillader chart.dk ikke at man laver den slags ændringer i
koden.
Undersøg evt. det først.


Philip Nunnegaard (26-01-2009)
Kommentar
Fra : Philip Nunnegaard


Dato : 26-01-09 05:32

"Philip Nunnegaard" <nunnenospam@hitsurf.dk> skrev

> <img src="http://cluster.chart.dk/chart.asp?id=xxxxx" border="0"
> alt="Chart.dk">
> ændres til:
> <img src="http://cluster.chart.dk/chart.asp?id=xxxxx" style="border:0;"
> alt="Chart.dk">
>
> Så skulle det validere.

<img>-koden skal lige have en / i slutningen:
<img src="http://cluster.chart.dk/chart.asp?id=xxxxx" style="border:0;"
alt="Chart.dk" />


Birger Sørensen (26-01-2009)
Kommentar
Fra : Birger Sørensen


Dato : 26-01-09 07:17

Philip Nunnegaard skrev den 26-01-2009:
> Note:
> [1] Muligvis tillader chart.dk ikke at man laver den slags ændringer i koden.
> Undersøg evt. det først.

Hvorfor skulle chart.dk ikke tillade, at man ændrer deres kode så den
validerer?
I øvrigt er der ikke foreslået funktionelle ændringer, kun ændringer
der vedrører den lokale visning, så det kan ikke ses hos chart.dk.

Hvorfor ændre fra HTML 4.01 til XHTML?
XHTML er HTML 4.01 med "ekstra" krav til semantikken - forskellen er
udelukkende i kildekoden, ikke fuknktionel (med mindre man samtid går
fra loose til strict).

Birger

--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk



Philip Nunnegaard (26-01-2009)
Kommentar
Fra : Philip Nunnegaard


Dato : 26-01-09 14:41

"Birger Sørensen" <sdc@bbsorensen.com> skrev

> Hvorfor skulle chart.dk ikke tillade, at man ændrer deres kode så den
> validerer?
> I øvrigt er der ikke foreslået funktionelle ændringer, kun ændringer der
> vedrører den lokale visning, så det kan ikke ses hos chart.dk.

Jeg ved ikke om de gør det, men jeg ved at der findes udbydere af den slags
gratis services som forbyder at man ændrer i koden.
Hvorfor ved jeg ikke. Jeg kan heller ikke se noget galt i det, så længe
ændringen ikke er af funktionel karakter.

> Hvorfor ændre fra HTML 4.01 til XHTML?
> XHTML er HTML 4.01 med "ekstra" krav til semantikken - forskellen er
> udelukkende i kildekoden, ikke fuknktionel (med mindre man samtid går fra
> loose til strict).

Jeg går ud fra at dette spørgsmål er rettet mod os begge.
Jeg skiftede over for et 1?-2 år siden i den tro at XHTML 1.0 var HTML 5.
Altså at det var de nye standarder. Jeg var ikke klar over at der også var
en HTML 5 på vej.

Så det var udelukkende i en tro på at jeg derved fremtidssikrede min kode.
Havde jeg vidst det jeg ved i dag, havde jeg nok stadig kodet efter HTML
4.01, men muligvis skiftet til strict for at undgå at sætte browseren i
quirks mode.

Jeg koder XHTML 1.0 strict. Men altså nogen overbevisende grund til skiftet
kan jeg ikke komme med.
Skal man se noget positivt i det, må det være at jeg ved at skifte over til
strict også følte mig tvunget til at begynde at _interessere_ mig for i det
hele taget at overholde standarden.


Erik Ginnerskov (27-01-2009)
Kommentar
Fra : Erik Ginnerskov


Dato : 27-01-09 06:55

Philip Nunnegaard wrote:

> Havde jeg vidst det jeg ved i dag, havde jeg nok stadig kodet
> efter HTML 4.01, men muligvis skiftet til strict for at undgå at sætte
> browseren
> i quirks mode.

Korrekt kodet (x)html transitional sætter ikke nogen browsere i quirks mode.
Manglende eller ufuldstændig DTD gør. Kode før DTD gør.

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


Philip Nunnegaard (27-01-2009)
Kommentar
Fra : Philip Nunnegaard


Dato : 27-01-09 08:33

"Erik Ginnerskov" <erik.ginnerskov@live.dk> skrev

> Korrekt kodet (x)html transitional sætter ikke nogen browsere i quirks
> mode. Manglende eller ufuldstændig DTD gør. Kode før DTD gør.

Jeg blander vist et par ting sammen her.
Måske fordi jeg indsatte doctypeerklæringen i min kode nogenlunde samtidig
med at jeg bare _begyndte_ at interessere mig for standarder (og det er ikke
længe siden). Og den indsatte jeg _kun_ fordi det var nødvendigt for at
kunne køre validatoren.

Før det havde jeg ingen ide om hvorfor jeg skulle spilde båndbredde på en
sådan "meningsløs linje" (ja, sådan anså jeg det for bare 3-4 år siden).



ScooterGrisen (27-01-2009)
Kommentar
Fra : ScooterGrisen


Dato : 27-01-09 08:07

Grunden til at lavede et script indeni et andet script var fordi jeg
gerne ville kunne skrive var size = "111x11"; også bruge variablen
senere.
Men nu har jeg lavet det sådan her...

<script type="text/javascript">
/* <![CDATA[ */

document.write('<scr'+'ipt type="text/javascript" src="http://
ads.banner.dk/newbanner.php?
size=88x31&amp;id=10206&amp;top=0&amp;b='+Math.floor
(89999999*Math.random()+10000000)+'&amp;v=2.00"></scr'+'ipt>');

/* ]]> */
</script>

altså ingen variabler og det ser sku ud til at virke ;)
Men af en eller anden grund så er det næsten altid det samme banner
billed som bliver vist så jeg var lidt itvivl om det skyldes scriptet
men jeg tror det skyldes banner.dk der bare viser det samme igen og
igen.

Så endelig ser det ud til at virke.

Tak for hjælpen allesammen.

Birger Sørensen (27-01-2009)
Kommentar
Fra : Birger Sørensen


Dato : 27-01-09 17:15

ScooterGrisen forklarede:
> Grunden til at lavede et script indeni et andet script var fordi jeg
> gerne ville kunne skrive var size = "111x11"; også bruge variablen
> senere.
> Men nu har jeg lavet det sådan her...
>
> <script type="text/javascript">
> /* <![CDATA[ */
>
> document.write('<scr'+'ipt type="text/javascript" src="http://
> ads.banner.dk/newbanner.php?
> size=88x31&amp;id=10206&amp;top=0&amp;b='+Math.floor
> (89999999*Math.random()+10000000)+'&amp;v=2.00"></scr'+'ipt>');
>
> /* ]]> */
> </script>
>
> altså ingen variabler og det ser sku ud til at virke ;)
> Men af en eller anden grund så er det næsten altid det samme banner
> billed som bliver vist så jeg var lidt itvivl om det skyldes scriptet
> men jeg tror det skyldes banner.dk der bare viser det samme igen og
> igen.
>
> Så endelig ser det ud til at virke.
>
> Tak for hjælpen allesammen.

Undskyld.
Jeg kan altså ikke komme fra, at jeg syntes det er noget bløb, at bruge
et php script til at levere et javascript, for at få fat i nogle
variable...
<script... >
var den_ene = 'dit', den_anden = 'dat;
</script>
<script... src="mit_javascript.js"></script>
burde være lige så godt.
Jeg er godt klar over, at der er ting der er lettere i php - men man
kan altså også gå over åen efter vand...

Birger

--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk



ScooterGrisen (28-01-2009)
Kommentar
Fra : ScooterGrisen


Dato : 28-01-09 16:39

Nå jeg troede kun variabler kun galt inden for hver deres <script></
script>

Jeg bruger PHP til og vise hele min hjemmeside.
Jeg har ikke nogen filer med ren HTML eller XHTML som det hedder nu.
Du kan ser her... sådan ser min forside.html fil ud
http://mentos.wep.dk/scooterhjemmeside/php/viskode.php?../forsiden.html
og den kalder så funktioner i http://mentos.wep.dk/scooterhjemmeside/php/viskode.php?../php/phpfunktioner.php
hvor jeg har kode som bliver genbrugt på alle siderne.
På den måde skal jeg kun redigere i phpfunktioner.php filen for at
ændre på alle siderne.

Jeg syns det smart det kræver bare at serveren hvor min hjemmeside
ligger på har php.

> Undskyld.
> Jeg kan altså ikke komme fra, at jeg syntes det er noget bløb, at bruge
> et php script til at levere et javascript, for at få fat i nogle
> variable...
> <script... >
> var den_ene = 'dit', den_anden = 'dat;
> </script>
> <script... src="mit_javascript.js"></script>
> burde være lige så godt.
> Jeg er godt klar over, at der er ting der er lettere i php - men man
> kan altså også gå over åen efter vand...


Jens Peter Karlsen (29-01-2009)
Kommentar
Fra : Jens Peter Karlsen


Dato : 29-01-09 06:10

Nej de gælder fra de mødes første gang og resten af siden.

Regards Jens Peter Karlsen.

On Wed, 28 Jan 2009 15:39:17 -0800 (PST), ScooterGrisen
<fedblindkat@yahoo.dk> wrote:

>Nå jeg troede kun variabler kun galt inden for hver deres <script></
>script>
>

ScooterGrisen (26-01-2009)
Kommentar
Fra : ScooterGrisen


Dato : 26-01-09 08:04

Det ser ud til man i XHTML 1.0 strict ikke må skrive...

<script type="text/javascript">
document.write('<script type="text/javascript" src="http://
ads.banner.dk/newbanner.php?size='+a+'&amp;id=10206&amp;top='+b
+'&amp;b='+c+'&amp;v='+d+'"></script>');
</script>

så får jeg fejl ved "></script>'); om at man ikk må skrive <script>
derinde.

Så kan man flytte document.write koden til en ekstern javascript fil
sætte den i en funktion og kalde den derfra, det var også det jeg
prøvede før men uden held...

Nu ser det ud til at virke og det bliver valideret. Jeg ved ikke hvad
jeg gjorde galt før men nu må jeg vente og se om statistikken bliver
ændret af og blive kaldt fra en ekstern javascript fil.

Grunden til jeg ville skifte fra HTML 4.01 transsitionel til HTML 1.0
strict var fordi jeg hele tiden prøver at forbedre min hjemmeside og
få størst muligt "ens-hed" i de forskellige browsere. Indholdet blever
cføli ik bedre men det da også lidt sjovt og være med på det nye ik at
min kode er ændret særlig meget.

Som jeg har læst det er XHTML ikke HTML men istedet XML... Nu kender
jeg ikke så meget til XML men det vist noget med det tillader en og
lave sine egne tags.

Birger Sørensen (26-01-2009)
Kommentar
Fra : Birger Sørensen


Dato : 26-01-09 17:01

ScooterGrisen sendte dette med sin computer:
> Det ser ud til man i XHTML 1.0 strict ikke må skrive...
>
> <script type="text/javascript">
> document.write('<script type="text/javascript" src="http://
> ads.banner.dk/newbanner.php?size='+a+'&amp;id=10206&amp;top='+b
> +'&amp;b='+c+'&amp;v='+d+'"></script>');
> </script>
> så får jeg fejl ved "></script>'); om at man ikk må skrive <script>
> derinde.
>
> Så kan man flytte document.write koden til en ekstern javascript fil
> sætte den i en funktion og kalde den derfra, det var også det jeg
> prøvede før men uden held...
>
> Nu ser det ud til at virke og det bliver valideret. Jeg ved ikke hvad
> jeg gjorde galt før men nu må jeg vente og se om statistikken bliver
> ændret af og blive kaldt fra en ekstern javascript fil.
>
> Grunden til jeg ville skifte fra HTML 4.01 transsitionel til HTML 1.0
> strict var fordi jeg hele tiden prøver at forbedre min hjemmeside og
> få størst muligt "ens-hed" i de forskellige browsere. Indholdet blever
> cføli ik bedre men det da også lidt sjovt og være med på det nye ik at
> min kode er ændret særlig meget.
>
> Som jeg har læst det er XHTML ikke HTML men istedet XML... Nu kender
> jeg ikke så meget til XML men det vist noget med det tillader en og
> lave sine egne tags.

Dit javascript er hevet ud af sammenhængen, og giver ikke meget mening.
Hvor kommer a, b, c, og d fra?
Scripts i XHTML skal markeres specielt for ikke at blive HTML-parset.

<script type="text/javascript">
/* <![CDATA[ */
document.write('<script type="text/javascript"
src="');'>http://ads.banner.dk/newbanner.php?size='+a+'&id=10206&top='+b+'&b='+c+'&v='+d+'">');
/* ]]> */
</script>

Kan ikke lige overskue om det også skal med i din write sætning - men
det skal det vist ikke.
Ved ikke om det løser dit problem, men det skulle gøre det muligt at
have det inline.

http://www.w3.org/TR/xhtml1/ forklarer at XHTML er en omformulering af
HTML 4, så det skal noteres som XML. Forskellen er altså i den måde det
skrives - ikke i funktionen.
XHTML er vist ikke specielt ny - og der er ingen garanti for
fremtidssikring af koden, heller, som Philip også skriver.
Det der er tilbage, er den strictere måde at skrive tingene på - som
nogen af os kan lide, og andre har så svært ved :/ at man er nødt til
at undre sig, over de ikke holder sig til den HTML, som de kan finde ud
af! (Generel betragtning - ikke møntet på nogen specielt).

Birger

--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk



ScooterGrisen (26-01-2009)
Kommentar
Fra : ScooterGrisen


Dato : 26-01-09 11:46

Ok jeg har prøvet sådan her i XHTML filen:

<script type="text/javascript">
/* <![CDATA[ */
document.write('HEJ');
document.write('HEJ');
/* ]]> */
</script>


<script type="text/javascript">
/* <![CDATA[ */

document.write('var size = "468x60";');
document.write('var randomnummer = Math.floor(89999999*Math.random()
+10000000);';
document.write('<script type="text/javascript" src="http://
ads.banner.dk/newbanner.php?size='+size
+'&amp;id=10206&amp;top=0&amp;b='+randomnummer+'&amp;v=2.00"></
script>');

/* ]]> */
</script>

------

Outputtet bliver:

HEJHEJ
'); /* ]]> */

------

Hvad skriver jeg forkert ?

Birger Sørensen (26-01-2009)
Kommentar
Fra : Birger Sørensen


Dato : 26-01-09 21:22

ScooterGrisen udtrykte præcist:
> Ok jeg har prøvet sådan her i XHTML filen:
>
> <script type="text/javascript">
> /* <![CDATA[ */
> document.write('HEJ');
> document.write('HEJ');
> /* ]]> */
> </script>
>
>
> <script type="text/javascript">
> /* <![CDATA[ */
>
> document.write('var size = "468x60";');
> document.write('var randomnummer = Math.floor(89999999*Math.random()
> +10000000);';
> document.write('<script type="text/javascript" src="http://
> ads.banner.dk/newbanner.php?size='+size
> +'&amp;id=10206&amp;top=0&amp;b='+randomnummer+'&amp;v=2.00"></
> script>');
>
> /* ]]> */
> </script>
>
> ------
>
> Outputtet bliver:
>
> HEJHEJ
> '); /* ]]> */
>
> ------
>
> Hvad skriver jeg forkert ?

Linien
document.write('var randomnummer = Math.floor(89999999*Math.random()
+10000000);';
har 3x( og to 2x) - der mangler en ). Hvordan det lige ender med at
blive tolket/vist, vil jeg ikke forsøge at overskue... Men jeg vil
gætte på, det er derfor.

Birger

--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk



Jens Peter Karlsen (26-01-2009)
Kommentar
Fra : Jens Peter Karlsen


Dato : 26-01-09 22:49

Ja, når man har rettet det og det jeg påpegede vil man få det
forventede:
HEJHEJ var size = "468x60";var randomnummer =
Math.floor(89999999*Math.random()+10000000);

Det vil naturligvis ikke give 2 javascript variabler, hvad jeg tror at
der var meningen, men i så fald skulle det i script tags.

Regards Jens Peter Karlsen.

On Mon, 26 Jan 2009 21:22:01 +0100, Birger Sørensen
<sdc@bbsorensen.com> wrote:

>Linien
>document.write('var randomnummer = Math.floor(89999999*Math.random()
>+10000000);';
>har 3x( og to 2x) - der mangler en ). Hvordan det lige ender med at
>blive tolket/vist, vil jeg ikke forsøge at overskue... Men jeg vil
>gætte på, det er derfor.

Jens Peter Karlsen (26-01-2009)
Kommentar
Fra : Jens Peter Karlsen


Dato : 26-01-09 22:31

Script tagget skal brydes op ellers fejltolkes det. Lav om til:
document.write('<scr'+'ipt type="text/javascript"
src="');'>http://ads.banner.dk/newbanner.php?size='+size+'&id=10206&top=0&b='+randomnummer+'&v=2.00">');

Bemærk ovenstående skal være en linie.

Regards Jens Peter Karlsen.

On Mon, 26 Jan 2009 10:45:58 -0800 (PST), ScooterGrisen
<fedblindkat@yahoo.dk> wrote:

>document.write('<script type="text/javascript" src="http://
>ads.banner.dk/newbanner.php?size='+size
>+'&amp;id=10206&amp;top=0&amp;b='+randomnummer+'&amp;v=2.00"></
>script>');

ScooterGrisen (26-01-2009)
Kommentar
Fra : ScooterGrisen


Dato : 26-01-09 19:48

Først og fremmest tak for hjælpen, det bliver bedre og bedre.
Nu er jeg kommet frem til dette:

---------------------------------------------
<script type="text/javascript">
/* <![CDATA[ */

document.write('<scr'+'ipt type="text/javascript">');
document.write('var size = "468x60";');
document.write('var randomnummer = Math.floor(89999999*Math.random()
+10000000);');
document.write('document.write(\'kat\');');
document.write('document.write(\'<scr'+'ipt type="text/javascript"
src="http://ads.banner.dk/newbanner.php?size='+size
+'&amp;id=10206&amp;top=0&amp;b='+randomnummer+'&amp;v=2.00"></
scr'+'ipt>\');');
document.write('</scr'+'ipt>');

/* ]]> */
</script>
---------------------------------------------

Koden virker ikke.
Men hvis jeg fjerner linien med "src="http://ads.banner.dk/
newbanner.php..." så bliver der skrevet kat i browseren.
Så det må være noget med den linie der.

Jeg syns godt nok det er besværligt med javascript. Det aldrig let
ligesom med andre sprog.

Birger Sørensen (27-01-2009)
Kommentar
Fra : Birger Sørensen


Dato : 27-01-09 07:50

ScooterGrisen kom med denne ide:
> Først og fremmest tak for hjælpen, det bliver bedre og bedre.
> Nu er jeg kommet frem til dette:
>
> ---------------------------------------------
> <script type="text/javascript">
> /* <![CDATA[ */
>
> document.write('<scr'+'ipt type="text/javascript">');
> document.write('var size = "468x60";');
> document.write('var randomnummer = Math.floor(89999999*Math.random()
> +10000000);');
> document.write('document.write(\'kat\');');
> document.write('document.write(\'<scr'+'ipt type="text/javascript"
> src="http://ads.banner.dk/newbanner.php?size='+size
> +'&amp;id=10206&amp;top=0&amp;b='+randomnummer+'&amp;v=2.00"></
> scr'+'ipt>\');');
> document.write('</scr'+'ipt>');
>
> /* ]]> */
> </script>
> ---------------------------------------------
>
> Koden virker ikke.
> Men hvis jeg fjerner linien med "src="http://ads.banner.dk/
> newbanner.php..." så bliver der skrevet kat i browseren.
> Så det må være noget med den linie der.
>
> Jeg syns godt nok det er besværligt med javascript. Det aldrig let
> ligesom med andre sprog.

2 ting.
Det virker stadig meget besynderligt at indsætte et javascript, der
opretter forbindelse til javascript på en anden server. Hvorfor ikke
gøre det direkte?
Du skal måske ændre &amp; til bare at vær & - de står i det del af
koden, der er markeret som CDATA, og det opfattes altså ikke som HTML,
og koden bliver ikke omsat til den rigtige karakter.

Birger

--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk



Jens Peter Karlsen (27-01-2009)
Kommentar
Fra : Jens Peter Karlsen


Dato : 27-01-09 14:32

Ret det til det her så virker det.

<script type="text/javascript">
/* <![CDATA[ */

document.write('<scr'+'ipt type="text/javascript">');
document.write('var size = "468x60";');
document.write('var randomnummer =
Math.floor(89999999*Math.random()+10000000);');
document.write('</scr'+'ipt>');
document.write('kat');
document.write('<scr'+'ipt type="text/javascript"
src="');'>http://ads.banner.dk/newbanner.php?size='+size+'&id=10206&top=0&b='+randomnummer+'&v=2.00">');

/* ]]> */
</script>

Bemærk linieskiftet ovenfor det skal fjernes.

Regards Jens Peter Karlsen.

On Mon, 26 Jan 2009 18:47:49 -0800 (PST), ScooterGrisen
<fedblindkat@yahoo.dk> wrote:

>Først og fremmest tak for hjælpen, det bliver bedre og bedre.
>Nu er jeg kommet frem til dette:
>

Søg
Reklame
Statistik
Spørgsmål : 177459
Tips : 31964
Nyheder : 719565
Indlæg : 6408196
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste