Bin gerade dabei für eine Seite ein Dropmenü zu erstellen, also wenn man mit dem Mauszeiger über einen Button fährt (Alle Horizontal am oberen Seitenrand angebracht) soll darunter das Untermenü mit den entsprechenden Einträgen auftauchen.
Das funktioniert auch schon, nur ist das Problem das wenn man das Fenster größer oder kleiner zieht das Untermenü immer an einer Stelle kleben bleibt und dann nicht mehr genau unter dem richtigen Button ist.
Hab auch schon nach einer Möglichkeit gesucht, aber nix dazu gefunden.
Ich kenne mich mit JavaScript auch noch nicht besonders gut aus, deswegen würde ich mich freuen wenn hier jemand einen Tipp hat wie ich das Problem lösen kann.
Hier mal der Code:
Javascript:
function openmenu(menuname){
hideAll('submenued');
hideAll('submenuee');
showLayer(menuname);
}
function resetMenu(){
hideAll('submenued');
hideAll('submenuee');
}
function highLight (layerName,direct){
initBrowser();
if (direct==1){ if (eval(layerRef + '["'+ layerName + '"]' + ns6)) {eval(layerRef + '["'+layerName+'"]' + styleSwitch + '.background="#999999"');} }
else { if (eval(layerRef + '["'+ layerName + '"]' + ns6)) {eval(layerRef + '["'+layerName+'"]' + styleSwitch + '.background="#999999"');} }
}
HTML:
Button:
<td width="115" class="navfeld">
<a href="index.php" class="menue" onMouseOver="openmenu('submenued1')"><img src="images/button_products.jpg" width="115" height="35" border="0" /></a>
</td>
Untermenü:
<div class="submenu" id="submenued1">
<table cellpadding="0" cellspacing="0">
<tr>
<td onMouseOver="resetMenu();"><div style="width:20px; height:100%" onMouseOver="resetMenu();"></div></td>
<td valign="top">
<div id="sn00" class="subnavfeld" onMouseOver="highLight('sn00',1)" onMouseOut="highLight('sn00',0)">
<a href="de/page_de.php?pid=595" class="menue">» Übersicht:</a>
</div>
<div id="sn01" class="subnavfeld" onMouseOver="highLight('sn01',1)" onMouseOut="highLight('sn01',0)">
<a href="de/page_de.php?pid=610" class="menue">produkt1</a>
</div>
<div style="height: 20px" onMouseOver="resetMenu();"></div>
</td>
<td onMouseOver="resetMenu();"><div style="width:20px; height:100%" onMouseOver="resetMenu();"></div></td>
</tr>
</table>
</div>
Die Ausrichtung des Untermenüs mach ich mit CSS:
#submenued1 {
left:30%;
}
.submenu {
position:absolute;
top:140px;
z-index:12;
visibility:hidden;
}
Das funktioniert auch schon, nur ist das Problem das wenn man das Fenster größer oder kleiner zieht das Untermenü immer an einer Stelle kleben bleibt und dann nicht mehr genau unter dem richtigen Button ist.
Hab auch schon nach einer Möglichkeit gesucht, aber nix dazu gefunden.
Ich kenne mich mit JavaScript auch noch nicht besonders gut aus, deswegen würde ich mich freuen wenn hier jemand einen Tipp hat wie ich das Problem lösen kann.
Hier mal der Code:
Javascript:
function openmenu(menuname){
hideAll('submenued');
hideAll('submenuee');
showLayer(menuname);
}
function resetMenu(){
hideAll('submenued');
hideAll('submenuee');
}
function highLight (layerName,direct){
initBrowser();
if (direct==1){ if (eval(layerRef + '["'+ layerName + '"]' + ns6)) {eval(layerRef + '["'+layerName+'"]' + styleSwitch + '.background="#999999"');} }
else { if (eval(layerRef + '["'+ layerName + '"]' + ns6)) {eval(layerRef + '["'+layerName+'"]' + styleSwitch + '.background="#999999"');} }
}
HTML:
Button:
<td width="115" class="navfeld">
<a href="index.php" class="menue" onMouseOver="openmenu('submenued1')"><img src="images/button_products.jpg" width="115" height="35" border="0" /></a>
</td>
Untermenü:
<div class="submenu" id="submenued1">
<table cellpadding="0" cellspacing="0">
<tr>
<td onMouseOver="resetMenu();"><div style="width:20px; height:100%" onMouseOver="resetMenu();"></div></td>
<td valign="top">
<div id="sn00" class="subnavfeld" onMouseOver="highLight('sn00',1)" onMouseOut="highLight('sn00',0)">
<a href="de/page_de.php?pid=595" class="menue">» Übersicht:</a>
</div>
<div id="sn01" class="subnavfeld" onMouseOver="highLight('sn01',1)" onMouseOut="highLight('sn01',0)">
<a href="de/page_de.php?pid=610" class="menue">produkt1</a>
</div>
<div style="height: 20px" onMouseOver="resetMenu();"></div>
</td>
<td onMouseOver="resetMenu();"><div style="width:20px; height:100%" onMouseOver="resetMenu();"></div></td>
</tr>
</table>
</div>
Die Ausrichtung des Untermenüs mach ich mit CSS:
#submenued1 {
left:30%;
}
.submenu {
position:absolute;
top:140px;
z-index:12;
visibility:hidden;
}