//das aktuelle Submenu speichert das var old_supmenu_id = false; var submenu_timeout = false; //wird ausgelöst wenn die Mause über den button fährt function overMenuButton(id,flag){ changeButton("button_"+id,true); if(flag){ showSubmenu(id); }else{ //altes entfernen if(old_supmenu_id != false) hideSubMenu(old_supmenu_id); oldsubmenu = false; } } //wird ausgelöst wenn die Mause den button verlässt function outMenuButton(id,flag){ changeButton("button_"+id,false); if(flag) submenu_timeout = window.setTimeout("hideSubMenu("+id+")",1000); } //versteckt das Submenu function hideSubMenu(id){ var obj = document.getElementById('menu_'+id); if(obj){ obj.style.visibility = "hidden"; } } //macht das Menu sichtbar function showSubmenu(id){ //eventuell Timeout löschen clearSubmenuTimeout(); var obj = document.getElementById('menu_'+id); //altes entfernen if(old_supmenu_id != false) hideSubMenu(old_supmenu_id); //neues menu zeigen obj.style.visibility = "visible"; //altes Menu == neues Menu old_supmenu_id = id; } //wird ausgelöst wenn das menu überfahren wird function overSubMenu(id){ clearSubmenuTimeout(); } //wird ausgelöst wenn das Menu verlassen wird function outSubMenu(id){ submenu_timeout = window.setTimeout("hideSubMenu("+id+")",1000); } /** beendet wenn vorhanden den Timeout */ function clearSubmenuTimeout(){ //eventuell Timeout löschen if(submenu_timeout){ window.clearTimeout(submenu_timeout); submenu_timeout = false; } }