Ik zit met een probleem waar ik al een paar dagen mee bezig ben. Het is het volgende: Ik gebruik het showlayer menu van Dreamweaver (MM_findObj & MM_showHideLayers). Het menu zelf werkt in 2 frames; een topframe, waarin de hoofditems staan, en een mainframe, waarin de submenu's uitklappen.
Dit alles werkt prima onder IE 6.0, maar het werkt helaas niet met IE 5.x. ALs je hier met de cursor op het menu gaat staan, klapt het wel uit, maar verschuif je de cursor naar het uitgeklapte deel, klapt het menu gelijk weer in en is het dus niet mogelijk om een link aan te klikken. Bij IE 6.0 blijft het menu staan.
Ik had ergens al gelezen dat, mocht er gewerkt worden met een tabel, het onmouseout event getrickerd wordt zodra je over een tabellijn heen gaat. Echter vind ik het vreemd dat dit dan niet bij IE 6.0 fout gaat. Heeft het soms iets te maken met het gebruik van frames?
Hieronder de gebruikte code:
Op beide pagina's:
In het topFrame:
In het mainFrame:
Dit alles werkt prima onder IE 6.0, maar het werkt helaas niet met IE 5.x. ALs je hier met de cursor op het menu gaat staan, klapt het wel uit, maar verschuif je de cursor naar het uitgeklapte deel, klapt het menu gelijk weer in en is het dus niet mogelijk om een link aan te klikken. Bij IE 6.0 blijft het menu staan.
Ik had ergens al gelezen dat, mocht er gewerkt worden met een tabel, het onmouseout event getrickerd wordt zodra je over een tabellijn heen gaat. Echter vind ik het vreemd dat dit dan niet bij IE 6.0 fout gaat. Heeft het soms iets te maken met het gebruik van frames?
Hieronder de gebruikte code:
Op beide pagina's:
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| <script language="JavaScript" type="text/JavaScript"> <!-- function MM_findObj(n, d) { //v4.01 var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); if(!x && d.getElementById) x=d.getElementById(n); return x; } function MM_showHideLayers() { //v6.0 var i,p,v,obj,args=MM_showHideLayers.arguments; for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2]; if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; } obj.visibility=v; } } //--> </script> |
In het topFrame:
HTML:
1
| <a href="linkje.htm" target="_parent">[img]"testpic.gif"[/img]</a> |
In het mainFrame:
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| <div id="testmenu" style="position:absolute; left:7px; top:0px; width:150px; height:196px; z-index:1; visibility: hidden;" onMouseOver="MM_showHideLayers('testmenu','','show')" onMouseOut="MM_showHideLayers('testmenu','','hide')" align="left"> <table width="150" bgcolor="#FF0066"> <tr> <td class="menutext"> </td> <td ><a href="testlink1.htm" target="_parent" class="menutext">Testlink 1</a></td> </tr> <tr> <td class="menutext"> </td> <td ><a href="testlink2.htm" target="_parent" class="menutext">Testlink 2</a></td> </tr> <tr> <td class="menutext"> </td> <td ><a href="testlink3.htm" target="_parent" class="menutext">Testlink 3</a></td> </tr> <tr> <td class="menutext"> </td> <td ><a href="testlink4.htm" target="_parent" class="menutext">Testlink 4</a></td> </tr> </table> [img]"onder.gif"[/img] </div> |