/ 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
layers i netscape
Fra : Andreas Clausen


Dato : 22-03-01 13:43

Hvorfor virker dette ikke i netscape?:

//forståelse af lag
ns = (document.layers) ? 1:0;
ie = (document.all) ? 1:0;

// gør lag synligt
function Vis(navn)
{
if (ns)
{
document.layers[''+navn].visibility = "show";
}
else
{
document.all[''+navn].style.visibility = "visible";
}
}

Hvad er problemet/syntaksen i netscape?

--
Venlig Hilsen

Andreas Clausen
http://website.gjk.dk/snagg




 
 
Jakob Andersen (22-03-2001)
Kommentar
Fra : Jakob Andersen


Dato : 22-03-01 15:12

"Andreas Clausen" <ad@gjk.dk> wrote
> Hvad er problemet/syntaksen i netscape?

Jeg går udfra at du mener NN6... "Problemet" er ikke den men de andre da de
ikke lver op til DOM standarden... Du kan få fat i et lag vha:

document.GetElementById("Elementid")

--
Jakob Andersen
FAQ for webdesign gruppen på
<http://www.usenet.dk/oss/dk.edb.internet.webdesign>
"Det er rart at være vigtig, men det er vigtigere at være rar "



Bo Rattenborg (22-03-2001)
Kommentar
Fra : Bo Rattenborg


Dato : 22-03-01 18:46

> Jeg går udfra at du mener NN6... "Problemet" er ikke den men de andre da
de
> ikke lver op til DOM standarden... Du kan få fat i et lag vha:
>
> document.GetElementById("Elementid")

Men for at imødekomme alle de sider der nu er fremtillet med møje og besvær
burde NN6 vel også understøtte den 'gamle' måde. Derfor ser jeg altså NN6
som et problem.

Bo



Jakob Andersen (22-03-2001)
Kommentar
Fra : Jakob Andersen


Dato : 22-03-01 18:52

"Bo Rattenborg" <bo.rattenborg@[no spam]mail.dk> wrote
> Men for at imødekomme alle de sider der nu er fremtillet med møje og
besvær
> burde NN6 vel også understøtte den 'gamle' måde. Derfor ser jeg altså NN6
> som et problem.

Jeg sidder som en trofast lille DOM-tilhænger og klapper i mine hænder da
man med NN6 "cutter" alle dem der ikke kan forstå at overholde standarderne
væk.

Hvis NN6 havde en DOM der også havde indbygget document.layers samt
getelementbyid() vil folk jo bare sige fint mine scripts virker og på den
måde bil vi jo stafig ikke overholde standarden!

Og i virkelighden vil en "rigtig" udvikler altid lave sin if sætning som
sådan:

if (browser der ikke understøtter standarden){
dårlig kode
}
else {
Kode der lever op til standarden
}

--
Jakob Andersen
FAQ for webdesign gruppen på
<http://www.usenet.dk/oss/dk.edb.internet.webdesign>
"Det er rart at være vigtig, men det er vigtigere at være rar "



Andreas Clausen (22-03-2001)
Kommentar
Fra : Andreas Clausen


Dato : 22-03-01 20:03

> Jeg går udfra at du mener NN6... "Problemet" er ikke den men de andre da
de
> ikke lver op til DOM standarden... Du kan få fat i et lag vha:
>
> document.GetElementById("Elementid")

Kald mig dum men jeg fatter ikke lige hvordan jeg skal skrive det:

function Vis(navn)
{
document.GetElementById(''+navn) = "show";
}

Kunne du evt. rette i dette eks.?

--
Venlig Hilsen

Andreas Clausen
http://website.gjk.dk/snagg




Jakob Andersen (22-03-2001)
Kommentar
Fra : Jakob Andersen


Dato : 22-03-01 20:12

"Andreas Clausen" <ad@gjk.dk> wrote in message
news:newscache$vw4mag$i7b$1@kalvebod.groenjord.dk...
> Kald mig dum men jeg fatter ikke lige hvordan jeg skal skrive det:
>
> function Vis(navn)
> {
> document.GetElementById(''+navn) = "show";
> }

Lad os sige du har et element der hedder
<div id="lag1">Dette er lag1</div>

Så kan du refrerere til det vha.:

document.GetElementById('lag1').style.visibility = "show"

Det vi gør i ovenstående er at vi i "document" (dokumentet) henter et
elemnent vha. dets ID på dette element går vi så ind i style attributten og
derefter sætte visibility til show dette vil altså manipulere dit elemnt til
at se sådan ud:

<div id="lag1" style="visibility:show;">Dette er lag1</div>

Dette vil du selvfølgelig ikke kunne se i kilden, men der er i teoriern
sådan at browseren vil læse det.

Herunder er et script som kan skjule vise layers i de fleste browsere (Jeg
har testet i IE5.5, NN4.7 og NN6) dette er indrettet til at alle lagene
hedder noget med lag1, lag2, lag3 ................lagn, og de kan så
skjules/ vises ved at sige vis(1) og skjul(1)

<SCRIPT TYPE="text/javascript">
function vis(n) {
if (document.layers) document.layers["lag" + n].visibility = "show";
else if (document.all) document.all["lag" + n].style.visibility ="visible";
else document.getElementById('lag' + n).style.visibility = "visible";
}

function gem(n){
if (document.layers) document.layers["lag" + n].visibility = "hide";
else if (document.all) document.all["lag" + n].style.visibility = "hidden";
else document.getElementById('lag' + n).style.visibility = "hidden";
}
</SCRIPT>


--
Jakob Andersen
FAQ for webdesign gruppen på
<http://www.usenet.dk/oss/dk.edb.internet.webdesign>
"Det er rart at være vigtig, men det er vigtigere at være rar "



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

Månedens bedste
Årets bedste
Sidste års bedste