27. februar 2002 - 21:26Der er
30 kommentarer og 1 løsning
document.layers[layername].visibility i Netscape 4.7??
Hej.
Er der mon nogen ekspert herinde, der har løsningen på mit problem?
Det er selvfølgelig Netscap 4.7 det ikke virker i. IE og Mozilla, virker det fint i.
Jeg har kigget på hvad det hedder i NS. Når man arbejder med lag, så hedder det enten document.layernavn eller document.layers[layernavn]
Og visibility kan have værdien 'hidden' eller 'visible' i IE, Mozilla og NS6, men i NS4 hedder det 'show' og 'hide'
Problemet er nu at jeg v.h.a. af ASP laver et bestemt antal lag (div) med et id. Jeg kalder så en løkke med counts parameteret, som sørger for at løkken fortsætter og laver id v.h.a. i som bruges i løkken. Det virker altså fint i IE og Mozilla/Netscape 6, men ikke i Netscape 4.7. For NS 4.7 har jeg prøvet at skrive: document.todayobject+i der gav en fejlmelding ("lag has no proberties") Og nu har jeg prøvet med document.layers['todayobject'+i]. - Det giver ingen fejlmeddelelse, men browseren "går ned":-| Se nedenstående
function Blinker(counts){ var IE = (document.all) ? true: false; var NS6 = (document.getElementById&&!document.all) ? true: false; var NS4 = (document.layers) ? true: false; var lag; var i; for (i = 0; i < counts; ++ i) { if(NS4) lag = document.layers['todayobject'+i]; if(IE) lag = document.all['todayobject'+i].style; if(NS6) lag = document.getElementById('todayobject'+i).style; if(lag.visibility=='visible')lag.visibility='hidden'; else lag.visibility='visible'; } setTimeout('Blinker('+ counts +')',1000) }
Husker du at sætte style="position: absolute;" på <div> tagget?
Hvis dit lag ligger inde i et andet lag, skal NS4.x have den ekstra reference med, eks.: HTML: <div id="container" style="position: absolute;"> <div id="todaylayer" style="position: absolute;"> ... </div> </div>
Ok, jeg kan stadig ikke få den til at blinke, men jeg har opdaget at hvis jeg vil styre et andet lag, så er det nok at give det et id og så bruge show/hide. Ellers kan man også give det et navn (name), men så SKAL der stå hidden/visibility for at virke i NS. Så hvis man navngiver den, sparer man noget af javascriptet:-)
Den ligger ikke inde i et lag. Der ligger kun et lag på siden. Det må som sagt være løkken, den ikke kan finde ud af, som de andre 2 også kan. Det står der også øverst. Det virker fint med et lag som blinker, hvis man ikke laver en løkke, men jeg skal bruge det til flere lag!!!
skummelt. Kan desværre ikke rigtigt tjekke det af i NS 4.x lige nu, for jeg er igang med en Download som ikke skal afbrydes og er nødt til at genstarte til win 98 hvor min NS 4.73 ligger på.
Prøv selv at lave if sætninger. Ellers er der noget galt med min NS4.7, men det tror jeg næppe. Desuden kører jeg NS på win2000
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.