Voor mijn homepage maak ik gebruik van een menu met een imagemap, door middel van javascript laat ik de afbeelding (ja, 1 dus) veranderen onhover, maar alleen op een bepaald gedeelte. Nu werk ik zelf met Mozilla Firefox, en daar werkte dit script prima, maar nu ik het getest heb op Internet explorer merk ik dat ik een foutmelding krijg:
document.getElementById(...) is leeg of geen object
De homepage staat tijdelijk online op http://homepages.adc.fcj.hvu.nl/1182816/portfolio, en hieronder staat de bron. Het probleem zit hem naar mijn idee in het <object> aangezien ik als ik dit verwijder wel een juiste weergave van het menu krijg in Internet explorer.
Als iemand mij hierbij zou kunnen helpen zou ik dat erg op prijs stellen
document.getElementById(...) is leeg of geen object
De homepage staat tijdelijk online op http://homepages.adc.fcj.hvu.nl/1182816/portfolio, en hieronder staat de bron. Het probleem zit hem naar mijn idee in het <object> aangezien ik als ik dit verwijder wel een juiste weergave van het menu krijg in Internet explorer.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head> <title> Welkom op de Portfolio pagina van Joost Verburg </title> <link rel="stylesheet" type="text/css" href="styles/style.css"/> <script type="text/javascript"/> function initMaps() { if (document.getElementById) { var mapIds = initMaps.arguments; // pass string IDs of containing map elements var i, j, area, areas; for (i = 0; i < mapIds.length; i++) { areas = document.getElementById(mapIds[i]).getElementsByTagName("area"); for (j = 0; j < areas.length; j++) { // loop thru img elements area = areas[j]; area.onmousedown = imgSwap; // set event handlers area.onmouseout = imgSwap; area.onmouseover = imgSwap; area.onmouseup = imgSwap; } } } } // image swapping event handling function imgSwap(evt) { evt = (evt) ? evt : event; var elem = (evt.target) ? evt.target : evt.srcElement; var imgClass = elem.parentNode.name; var coords = elem.coords.split(","); var clipVal = "rect(" + coords[1] + "px " + coords[2] + "px " + coords[3] + "px " + coords[0] + "px)"; var imgStyle; switch (evt.type) { case "mousedown" : imgStyle = document.getElementById(imgClass + "Down").style; imgStyle.clip = clipVal; imgStyle.visibility = "visible"; break; case "mouseout" : document.getElementById(imgClass + "Over").style.visibility = "hidden"; document.getElementById(imgClass + "Down").style.visibility = "hidden"; break; case "mouseover" : imgStyle = document.getElementById(imgClass + "Over").style; imgStyle.clip = clipVal; imgStyle.visibility = "visible"; break case "mouseup" : document.getElementById(imgClass + "Down").style.visibility = "hidden"; // guarantee click in IE if (elem.click) { elem.click(); } break; } evt.cancelBubble = true; return false; } </script> </head> <body class="home" onload="initMaps('menubarMap')"> <div> [img]"images/menubarOver.jpg"[/img] [img]"images/menubarUp.jpg"[/img] [img]"images/menubarDown.jpg"[/img] </div> <div class="main"> <object type="text/html" name="pages" class="oranges" data="home_.htm"/> </div> <div> <map id="menubarMap" name="menubar"> <area shape="rect" alt="Contact" coords="4,120,108,132" href="contact.asp" target="pages"/> <area shape="rect" alt="Eigen Werk" coords="4,94,108,107" href="works.htm" target="pages"/> <area shape="rect" alt="Schoolwerk" coords="4,82,108,95" href="school.htm" target="pages"/> <area shape="rect" alt="Over Mij" coords="4,57,108,69" href="aboutme.htm" target="pages"/> <area shape="rect" alt="Deze Pagina's" coords="4,43,108,57" href="about.htm" target="pages"/> <area shape="rect" alt="Nieuws" coords="4,18,108,31" href="nieuws.xml" target="pages"/> <area shape="rect" alt="Home" coords="4,5,108,18" href="home_.htm" target="pages"/> </map> </div> </body> </html> |
Als iemand mij hierbij zou kunnen helpen zou ik dat erg op prijs stellen
[ Voor 18% gewijzigd door Verwijderd op 24-10-2005 00:05 ]