Airborne Skrevet 2. mai 2009 Del Skrevet 2. mai 2009 (endret) Hei, jeg får meldingen "‘document.getElementById(…)’ is null or not an object" i IE6 og IE7 med ett script som gjør det mulig å vise sidelengs liste ved hover i en navigasjon. Scriptet ser slik ut og jeg lurer da på hva som forsårsaker denne meldingen?: startList = function() { if (document.all&&document.getElementById) { navRoot = document.getElementById("nav"); for (i=0; i<navRoot.childNodes.length; i++) { node = navRoot.childNodes[i]; if (node.nodeName=="LI") { node.onmouseover=function() { this.className+=" over"; } node.onmouseout=function() { this.className=this.className.replace(" over", ""); } } } } } window.onload=startList; Jeg har kun _1_ "nav" ID. Er ikke veldig glup med JS, så kan noen prøve å debugge hva som skaper meldingen. Hele meldingen er i attachment Endret 2. mai 2009 av Airborne Lenke til kommentar
dabear Skrevet 3. mai 2009 Del Skrevet 3. mai 2009 Feilen er i htmlstrukturen. Det finnes ingen element med id="nav" . Dobbeltsjekk dette, og gi link til sida, dersom dette ikke var feilen. Lenke til kommentar
Gjest Slettet+9871234 Skrevet 21. mai 2009 Del Skrevet 21. mai 2009 Det finnes ingen element med id="nav" . Ja det elementet må være definert med en entydig id. Merk for øvrig at Internet Explorer til og med versjon 8 ikke er en W3C DOM "cpmpliant" nettleser, som Google Chrome, FF, Opera, ... Det gjør at man ofte må skrive egne hacks for IE når man opererer på DOM objekter. Den moderne metoden til å oppdage om en nettleser støtter en metode er "feature sniffing." Her http://www.kjellbleivik.com/bt.htm kan du teste om du bruker en W3C DOM "compliant" nettleser. KBleivik Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå