21. marts 2004 - 19:12
Der er
15 kommentarer og 1 løsning
Hjælp til Dropdown-menu
Hej! Jeg har lavet mig en dropdown menu... Men den virker ikke... Det, jeg har lavet indtil nu, er: <script language="JavaScript1.2"> <!-- var md=250; var ti=-1; var hans=null; function clearMenu(targetBox) { if(hans!=null) { if (document.getElementById(targetBox).style.visibility == "visible") { document.getElementById(targetBox).style.visibility="hidden"; hans=null; } } } function closeAll() { document.getElementById('box1').style.visibility="hidden"; document.getElementById('box2').style.visibility="hidden"; document.getElementById('box3').style.visibility="hidden"; document.getElementById('box5').style.visibility="hidden"; } function go(targetBox) { clearTimeout(ti); if (document.getElementById(targetBox).style.visibility == "hidden") { closeAll(); document.getElementById(targetBox).style.visibility="visible"; hans=1; } } --> </script> og .... <div id="menu"> <ul> <li class="left"></li> <li><a href="#" onMouseOver="go('box1');"> Klubben</a></li> <li><a href="#" onMouseOver="go('box2');"> Medlem</a></li> <li><a href="#" onMouseOver="go('box3');"> Træning</a></li> <li><a href="#"> Opslagstavlen</a></li> <li><a href="#" onMouseOver="go('box5');"> Aktiviteter</a></li> <li class="right"></li> </ul> <div id="box1" class="submenu" style="left:12px;"> <div class="shadow"> <ul> <li><a href="#"> » Hvem er vi?</a></li> <li><a href="#"> » Hvor er vi?</a></li> <li><a href="#"> » Tilbage til Forsiden </a></li> </ul> </div> </div> <div id="box2" class="submenu" style="left:82px;"> <div class="shadow"> <ul> <li><a href="#"> » Bliv medlem</a></li> <li><a href="#"> » Til nye medlemmer </a></li> </ul> </div> </div> <div id="box3" class="submenu" style="left:151px;"> <div class="shadow"> <ul> <li><a href="#"> » Træning</a></li> <li><a href="#"> » Juniorer</a></li> <li><a href="#"> » Børnetræning</a></li> <li><a href="#"> » Reservation af baner </a></li> </ul> </div> </div> <div id="box5" class="submenu" style="left:338px;"> <div class="shadow"> <ul> <li><a href="#"> » Tennislejr</a></span></li> <li><a href="#"> » Aktivitetskalender </a></span></li> </ul> </div> </div> </div> Problemet er når div'ene skal skjules igen ... Jeg har prøvet med onmouseout="ti=setTimeout('clearMenu(\'box1\')',md);" på både a, div og ul ... Nogen der kan hjælpe? På forhånd tak!! //MikkelM
Annonceindlæg fra HPE
21. marts 2004 - 19:17
#1
Den virker fint ved mig, med IE6, når jeg satte body på, og sagde onload="closeAll();" Jeg ved ikke rigtigt, hvad der er galt... Hvilken browser bruger du? Og desuden, hvis du vil bruge den på en hjemmeside, synes jeg altså, at du enten skal sætte dem i spans, eller også skal give dem stylen float:right eller noget i den retning...
21. marts 2004 - 19:21
#2
Virker den? Skjuler den også når du fører musen væk? Hvilke bør jeg sætte i spans?
21. marts 2004 - 19:22
#3
( Jeg har tjekket i både Firefox og IE6 )
21. marts 2004 - 19:29
#4
Ja, i IE6 virker den, også med at skjule alle de forskelle grupper (den ville være mere "udviklervenlig", hvis du gav grupperne rammer). Grupperne, så de fremkommer på det samme sted.
21. marts 2004 - 19:31
#5
For det første bør du nok bruge .style.display="none" eller "block" ... For det andet er det nok ret smart at bede dine li'er om at gøre noget rigtigt, for det ser mærkeligt ud, at du har tomme disks-li'er !-)
21. marts 2004 - 19:31
#6
Jeg forstår altså ikke... Hvor har du så indsat onMouseOut tingen?
21. marts 2004 - 19:33
#7
Se lige her, dette virker for mig: <script language="JavaScript1.2"> <!-- var md=250; var ti=-1; var hans=null; function clearMenu(targetBox) { if(hans!=null) { if (document.getElementById(targetBox).style.visibility == "visible") { document.getElementById(targetBox).style.visibility="hidden"; hans=null; } } } function closeAll() { document.getElementById('box1').style.visibility="hidden"; document.getElementById('box2').style.visibility="hidden"; document.getElementById('box3').style.visibility="hidden"; document.getElementById('box5').style.visibility="hidden"; } function go(targetBox) { clearTimeout(ti); if (document.getElementById(targetBox).style.visibility == "hidden") { closeAll(); document.getElementById(targetBox).style.visibility="visible"; hans=1; } } --> </script> og .... <body onload="closeAll();"> <div id="menu"> <ul> <li class="left"></li> <li><a href="#" onMouseOver="go('box1');"> Klubben</a></li> <li><a href="#" onMouseOver="go('box2');"> Medlem</a></li> <li><a href="#" onMouseOver="go('box3');"> Træning</a></li> <li><a href="#"> Opslagstavlen</a></li> <li><a href="#" onMouseOver="go('box5');"> Aktiviteter</a></li> <li class="right"></li> </ul> <span id="box1" class="submenu" style="left:12px;"> <div class="shadow"> <ul> <li><a href="#"> » Hvem er vi?</a></li> <li><a href="#"> » Hvor er vi?</a></li> <li><a href="#"> » Tilbage til Forsiden </a></li> </ul> </div> </span> <span id="box2" class="submenu" style="left:82px;"> <div class="shadow"> <ul> <li><a href="#"> » Bliv medlem</a></li> <li><a href="#"> » Til nye medlemmer </a></li> </ul> </div> </span> <span id="box3" class="submenu" style="left:151px;"> <div class="shadow"> <ul> <li><a href="#"> » Træning</a></li> <li><a href="#"> » Juniorer</a></li> <li><a href="#"> » Børnetræning</a></li> <li><a href="#"> » Reservation af baner </a></li> </ul> </div> </span> <span id="box5" class="submenu" style="left:338px;"> <div class="shadow"> <ul> <li><a href="#"> » Tennislejr</a><!-- </span> --></li> <li><a href="#"> » Aktivitetskalender </a><!-- </span> --></li> </ul> </div> </span> </div> </body>
21. marts 2004 - 19:38
#8
Miko >> Det er rigtigt nok, at drop'ene forsvinder, hvis man flytter musen fra et pkt til et andet, men hvad nu hvis man fører musen ned over siden i stedet? Så blir span'et hængende...
21. marts 2004 - 19:39
#9
<script language="JavaScript1.2"> <!-- var md=250; var ti=-1; var hans=null; function clearMenu(targetBox) { if(hans!=null) { if (document.getElementById(targetBox).style.display == "block") { document.getElementById(targetBox).style.display="none"; hans=null; } } } function closeAll() { document.getElementById('box1').style.display="none"; document.getElementById('box2').style.display="none"; document.getElementById('box3').style.display="none"; document.getElementById('box5').style.display="none"; } function go(targetBox) { clearTimeout(ti); if (document.getElementById(targetBox).style.display == "none") { closeAll(); document.getElementById(targetBox).style.display="block"; hans=1; } } --> </script> </head> <body onLoad="closeAll();"> <div id="menu"> <ul> <li class="left"></li> <li><a href="#" onMouseOver="go('box1');"> Klubben</a></li> <li><a href="#" onMouseOver="go('box2');"> Medlem</a></li> <li><a href="#" onMouseOver="go('box3');"> Træning</a></li> <li><a href="#"> Opslagstavlen</a></li> <li><a href="#" onMouseOver="go('box5');"> Aktiviteter</a></li> <li class="right"></li> </ul> <span id="box1" class="submenu" style="left:12px;"> <div class="shadow"> <ul> <li><a href="#"> » Hvem er vi?</a></li> <li><a href="#"> » Hvor er vi?</a></li> <li><a href="#"> » Tilbage til Forsiden </a></li> </ul> </div> </span> <span id="box2" class="submenu" style="left:82px;"> <div class="shadow"> <ul> <li><a href="#"> » Bliv medlem</a></li> <li><a href="#"> » Til nye medlemmer </a></li> </ul> </div> </span> <span id="box3" class="submenu" style="left:151px;"> <div class="shadow"> <ul> <li><a href="#"> » Træning</a></li> <li><a href="#"> » Juniorer</a></li> <li><a href="#"> » Børnetræning</a></li> <li><a href="#"> » Reservation af baner </a></li> </ul> </div> </span> <span id="box5" class="submenu" style="left:338px;"> <div class="shadow"> <ul> <li><a href="#"> » Tennislejr</a></li> <li><a href="#"> » Aktivitetskalender </a></li> </ul> </div> </span> </div>
21. marts 2004 - 19:41
#10
Roen >> Tomme disks li'er?
21. marts 2004 - 19:42
#11
liste-tegnet hedder en disk (det kan faktisk indstilles til noget andet via css !-)
21. marts 2004 - 19:43
#12
Det ved jeg :) Jeg har ændret det til none :P
21. marts 2004 - 20:03
#13
Any suggestions?
21. marts 2004 - 20:30
#14
Jeg er stået af...
21. marts 2004 - 20:51
#15
:/
Vi tilbyder markedets bedste kurser inden for webudvikling