/ 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
document.write
Fra : Jacob Jensen


Dato : 17-08-05 22:03

Hej

Jeg bruger et javscript som indeholder en document.write som skriver sådan
noget her:

<span id='noget' style='position:absolute;'><a href=side.htm'><img
src='billede.gif' alt="noget"></a></span>

....men nu kommer jeg til at tænke på at <span> jo ikke bare må stå alene.
Den skal være i en <div>,<p> eller noget andet i henhold til w3c's html
strict. Hvor bliver dette skrevet til? Hvordan fungerer document.write?

Det jeg gerne vil opnå er at kunne flytte dette element rundt bagefter, som
skrevet tidligere i gruppen.

Jacob



 
 
Allan Vebel (17-08-2005)
Kommentar
Fra : Allan Vebel


Dato : 17-08-05 23:39

Jacob Jensen <omo@adslhome.dk> skrev:

> Jeg bruger et javscript som indeholder en document.write
> som skriver sådan noget her:
>
> <span id='noget' style='position:absolute;'>....

Jeg spekulerer på hvorfor du overhovedet behøver at bruge
javascript til formålet. Hvorfor skriver du det ikke direkte?

> må stå alene. Den skal være i en <div>,<p> eller noget andet
> i henhold til w3c's html strict.

Prøv det!

Kom med et link til det du har prøvet, så er det meget nemmere
at hjælpe dig.

--
Allan Vebel
http://html-faq.dk



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


Dato : 17-08-05 23:57

> Jeg spekulerer på hvorfor du overhovedet behøver at bruge
> javascript til formålet. Hvorfor skriver du det ikke direkte?

Jeg har en variabel som bestemmer hvor mange af disse objekter der skal
laves. Jeg kunne godt skrive koden manuelt ind i html-filen men det er ikke
nær så sjovt :)

>> må stå alene. Den skal være i en <div>,<p> eller noget andet
>> i henhold til w3c's html strict.
>
> Prøv det!

Hvad skal jeg prøve? Jeg forstår ikke. Følgende validerer ikke:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<title>Titel</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>

<span style='position:absolute;'><a href='secret.htm'><img
src='billeder/picture.gif' alt="noget"></a></span>

</body>

</html>

> Kom med et link til det du har prøvet, så er det meget nemmere
> at hjælpe dig.

Jeg har ikke lige et link lige nu og jeg har lidt travlt, men i kan indsætte
ovenstående kode direkte på validator.w3.org.

Jacob



Allan Vebel (18-08-2005)
Kommentar
Fra : Allan Vebel


Dato : 18-08-05 01:59

Jacob Jensen <omo@adslhome.dk> skrev:

> Jeg har en variabel som bestemmer hvor mange af
> disse objekter der skal laves.

Du skal vel kun lave det samme link en enkelt gang?

>> Prøv det!
>
> Hvad skal jeg prøve? Jeg forstår ikke.

Det du selv foreslog med <p> eller <div>.

>> Kom med et link til det du har prøvet, så...
>
> Jeg har ikke lige et link lige nu og jeg har lidt travlt

Det tager kun nogle få sekunder at lægger det ud på
nettet hvor alle kan se det, alle kan kommentere din
kode, og du får mulighed for hjælp fra mange flere af
de kloge eksperter.

Der er ingen der gider at klippe din kode ud, gemme
den på egen harddisk, for derefter at uploade den for
at få den valideret. Det er dig selv der skal gøre det
meste af arbejdet - og dermed gøre det nemt for andre
at hjælpe dig videre i dit projekt.

--
Allan Vebel
http://html-faq.dk



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


Dato : 18-08-05 07:23

> Du skal vel kun lave det samme link en enkelt gang?

nej

> Det du selv foreslog med <p> eller <div>.

Ja ok. Jeg tænkte bare om nogle vidste hvad document.write egentligt gjorde.
Altså svarer det direkte til at skrive noget ind i <body> eller hvordan?

> Der er ingen der gider at klippe din kode ud, gemme
> den på egen harddisk, for derefter at uploade den for
> at få den valideret. Det er dig selv der skal gøre det
> meste af arbejdet - og dermed gøre det nemt for andre
> at hjælpe dig videre i dit projekt.

Det er jeg klar over og det er fint med mig, men w3 har en boks hvor man kan
sætte noget tekst ind man vil validere og det finder jeg altså ikke særligt
besværligt:

Marker min tekst.
Kopier den til clipboard.
Indsæt det på validator.w3.org
Tryk check.

Jeg er ikke med på hvorfor det skulle være nemmere at indtaste en url i en
boks end at sætte noget tekst ind fra clipboard i en boks. Her er et link
til koden (som nu giver 4 fejl istedet for 2 pga. TDC's statistikkode i
bunden af min html-fil):

http://home20.inet.tele.dk/omo/test/spantest.htm

Jacob



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


Dato : 18-08-05 10:21

On Thu, 18 Aug 2005 08:23:26 +0200, Jacob Jensen <omo@adslhome.dk> wrote:

> Ja ok. Jeg tænkte bare om nogle vidste hvad document.write egentligt
> gjorde.
> Altså svarer det direkte til at skrive noget ind i <body> eller hvordan?

Ja, document.write tilføjer teksten til DOM. Så det du skriver som
parameter til document.write, skal være det samme, du ville skrive i html.
Dvs. hvis du ønsker at lave en boks, du kan flytte med senere, så kan du
skrive:
document.write("<div style='position:absolute;' id='elementnavn'></div>");
eller hvis det element du skal bruge, ikke giver mening som et block
element, så kan du benytte span, og så samle de elementer, der hænger
sammen i et block element.

En lidt pænere metode til at tilføje elementer er:
var elem = document.createElement('div');
elem.style.position='absolute';
elem.id='elementnavn';
document.getElementById('parentelement').appendChild(elem);

--
Ryan Kristensen

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


Dato : 18-08-05 17:38

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

> Ja ok. Jeg tænkte bare om nogle vidste hvad document.write egentligt gjorde.
> Altså svarer det direkte til at skrive noget ind i <body> eller hvordan?

Forestil dig at browseren læser dokumentet fra toppen og ned, et tegn
ad gangen, og fortolker det som HTML efterhånden som den genkender de
forskellige tags.

Når den så har læst et script-element (altså lige efter
</script>-tagget), så udfører den scriptet inden den fortsætter med at
læse.

Hvis scriptet indeholder kald til document.write, så vil det der
bliver skrevet, blive indsat lige *før* resten af dokumentet.

Se på siden:
---
<html>
<head>
<script type="text/javascript">
document.write("<title>Dims og dut<\/title>");
</script>
</head>
<body>
<h1>At tænke sig!</h1>
</body>
<html>
---

Når browseren har parset script-elementet, så har den dette tilbage
at læse af dokumentet:
---

</head>
<body>
<h1>At tænke sig!</h1>
</body>
<html>
---
Så udfører den scriptet, og bagefter ser det ud som om den har
dette tilbage at læse:
---
<title>Dims og dut</title>
</head>
<body>
<h1>At tænke sig!</h1>
</body>
<html>
---

Så fortsætter browseren med at læse resten af dokumentet, som det ser
ud nu.

> (som nu giver 4 fejl istedet for 2 pga. TDC's statistikkode i
> bunden af min html-fil):

Sådan nogen ... klytter! Nå, "127.0.0.1 statistik-gallup.net" i hosts
filen, så skulle det være en død sild.

> http://home20.inet.tele.dk/omo/test/spantest.htm

Sæt et <div> ind efter <body> og et </div> ind før </body>, så skulle
det være klaret :)

/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:41

> Forestil dig at browseren læser dokumentet fra toppen og ned, et tegn
> ad gangen, og fortolker det som HTML efterhånden som den genkender de
> forskellige tags.
>
> Når den så har læst et script-element (altså lige efter
> </script>-tagget), så udfører den scriptet inden den fortsætter med at
> læse.
>
> Hvis scriptet indeholder kald til document.write, så vil det der
> bliver skrevet, blive indsat lige *før* resten af dokumentet.

Mange tak.

Jacob



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


Dato : 18-08-05 22:33

Jacob Jensen skrev:

> Det er jeg klar over og det er fint med mig, men w3 har en
> boks hvor man kan sætte noget tekst ind man vil validere og
> det finder jeg altså ikke særligt besværligt:

Det er stadig en del mere besværligt i forhold til at kunne se på
en side online. Det handler ikke kun om at kunne validere koden,
men lige så meget om at kunne teste den i en browser.

Som spørger vælger du selv hvor meget forarbejde du vil stille til
rådighed til læserne af dit indlæg. Omvendt vælger læserne helt
selv hvilke indlæg de vil svare på - derfor er det normalt en god
ide at gøre det så let som muligt for eventuelle læsere.
--
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

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408924
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste