11. november 2009 - 10:57
Der er
11 kommentarer og 1 løsning
IE Browserfejl
Hej Eksperter Jeg får følgende fejl i ie: 'document.getElementById(...)' er null eller ikke et objekt fra et javascript (tak zips), og jeg kan bare ikke se fejlen... Jeg har et stylesheet som følger: <style type="text/css"> { font-family: arial, verdana, sans-serif; font-size: small; color: #333333; } ol { border: 1px solid #000000; padding: 0px; margin: 0px; list-style-type: none; background-color: #E7E7E7; font-size: small; font-weight: bold; } ol ol { float: left; position: absolute; top: 20px; left: 0px; display: none; } ol li { position: relative; float: left; } li a { display: block; padding: 5px; background-color: #e7e7e7; height: 10px; width: 145px; text-decoration: none; color: #777; } a:hover { background-color: #B1E3FF; color: #000000; } li:hover ol, #nav li.sfhover ol { display: block; } </style> Og et javascript som får det til at virke i ie6.0: <script type="text/javascript"><!--//--><![CDATA[//><!-- sfHover = function() { var sfEls = document.getElementById("nav").getElementsByTagName("LI"); for (var i=0; i<sfEls.length; i++) { sfEls[i].onmouseover=function() { this.className+=" sfhover"; } sfEls[i].onmouseout=function() { this.className=this.className.replace(new RegExp(" sfhover\\b"), ""); } } } if (window.attachEvent) window.attachEvent("onload", sfHover); //--><!]]></script>
Annonceindlæg fra Kingston Technology
11. november 2009 - 19:22
#1
fejlen betyder at det object du forsøger at hive fat i - højst sandsynligt det du mener hedder "nav" ikke findes. Ovenstående kode i sig selv kan altså ikke forklare eller løse fejlen.
12. november 2009 - 15:46
#2
Ok her er det css som jeg har prøvet at tilpasse mit, giver det så nogen mening? <style type="text/css"> body { font-family: Arial, Helvetica, sans-serif; font-size: small; color: #333333; } ol { padding: 0px; margin: 0px; list-style-type: none; } ol ol { width:150px; position: absolute; top: 26px; left: 0px; display: none; } ol li { position: relative; } li {float:left;} li a { display:block; padding: 5px; border: 1px solid #808080; background-color: #e7e7e7; height:15px; width:150px; text-decoration: none; color: #777; } li:hover ol, li.over ol { display: inline; } </style> </head> <body> <ol> <li><a href="#">Home</a></li> <li><a href="#">Products</a> <ol> <li><a href="#">Guitars</a></li> <li><a href="#">Basses</a></li> <li><a href="#">Accessories</a></li> <li><a href="#">Sheet Music</a></li> </ol> </li> <li><a href="#">Services</a> <ol> <li><a href="#">Guitar Repair</a></li> <li><a href="#">Music Lessons</a></li> <li><a href="#">Instrument Rental</a></li> </ol></li> <li><a href="#">Contact Us</a> <ol><li><a href="#">By Phone</a></li> <li><a href="#">By E-Mail</a></li></ol> </li> </ol> </body> </html>
12. november 2009 - 19:03
#3
fejl du får har ikke noget med dit css at gøre - det er en javascript-fejl. Kører du det stykke javascript du postede i dit spørgsmål er det med ovenstående kode klart at fejlen kommer for du har ikke noget element med id="nav".
12. november 2009 - 19:09
#4
ok så jeg er i den forkerte kategori?
12. november 2009 - 19:19
#5
den fejl du får er i hvert fald om javascript og ikke css - men forklaringen på fejlen har du i hvert fald fået; du har ikke noget element med id'et nav som du forsøger at fange med dit javascript.
12. november 2009 - 19:32
#6
ja det er jeg med på jeg ved bare ikke hvordan jeg får det rettet. Men post et svar så får du point og jeg lukker her :-)
12. november 2009 - 20:30
#7
jamen - hvilket element skal have den funktionalitet du forsøger at ramme med dit js?
12. november 2009 - 20:39
#8
Det er for at få hover effekten til at virke i ie6.0, jeg fik at vide at den ikke understøtter det så der skal noget javascript til.
12. november 2009 - 22:22
#9
virker hover ikke i IE6 - det er nyt for mig. Men der må ligge et eksempel et sted hvor det bliver forklaret hvordan du får det javascript til at fungere - mon ikke du bare skal sætte det korrekte id på dit ol-tag.
12. november 2009 - 23:01
#10
ok
13. november 2009 - 07:27
#11
tak for hjælpen...
15. november 2009 - 01:46
#12
nå - men det er anmeldt for misbrug.
Vi tilbyder markedets bedste kurser inden for webudvikling