imgHi = new Image(); imgHi.src = "/masterimages/layoutfiles/high.gif"; imgLo = new Image(); imgLo.src = "/masterimages/layoutfiles/low.gif"; imgHiS = new Image(); imgHiS.src = "/masterimages/layoutfiles/highp.gif"; imgLoS = new Image(); imgLoS.src = "/masterimages/layoutfiles/lowp.gif"; transGifSrc = "/masterimages/layoutfiles/trans.gif"; //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ function startt(){ var zeit = new Date(); start = zeit.getMilliseconds(); } function stopt(){ var zeit = new Date(); stop = zeit.getMilliseconds(); //alert(start/1000+", "+stop/1000); //alert((stop-start)/1000); } //+++ Menu erzeugen ++++++++++++ menuInitOK=false; //globale vari, ob das menu vollständig ist function erzeugeMenu(ebene1,ebene2,xPos,yPos){ var menuID = (ebene2==0)?String(ebene1):ebene1+"_"+ebene2; var imgRefEbene2 = new Array(); //hier werden die img-Namen reinkopiert, um die globale JS Referenz auf die img zu ermöglichen var imgRefEbene1 = new Array(); //hier werden die img-Namen reinkopiert, um die globale JS Referenz auf die img zu ermöglichen var ausgabepuffer1 = '\n'; ausgabepuffer2 += '\n\n'; ausgabepuffer3 += '\n\n'; //schreiben document.write(ausgabepuffer1); document.write(ausgabepuffer2); document.write(ausgabepuffer3); //globale Referenz auf die divs setzen //JS Objektname = "js"+divName, z.B. jsbm1_1 eval("jsbm"+menuID+"=getLO('bm'+menuID);"); eval("jstm"+menuID+"=getLO('tm'+menuID);"); eval("jslm"+menuID+"=getLO('lm'+menuID);"); //positionieren setXY(eval("jsbm"+menuID),xPos,yPos); setXY(eval("jstm"+menuID),xPos,yPos); setXY(eval("jslm"+menuID),xPos,yPos); //unsichtbar machen versteckeLO(eval("jsbm"+menuID)); versteckeLO(eval("jstm"+menuID)); versteckeLO(eval("jslm"+menuID)); //globale Referenz auf images setzen für performance+ //JS Image Name = "js"+imgName, z.B. jsimg1_2_0 for(var i=0;i2")) { if (winBreite<=kante1 && i==anzahlMains) { erzeugeMenu(i,j,abstaende[i]-feldbreite,yOff+((j-1)*feldhoehe));//erzeugt ebene2 menus beim rechtesten punkt auf der LINKEN seite (=browser zu schmal) menMode = "links"; } else if (winBreite<=kante2 && i==anzahlMains-1) { erzeugeMenu(i,j,abstaende[i]-feldbreite,yOff+((j-1)*feldhoehe));//erzeugt ebene2 menus beim 2. punkt von rechts auf der LINKEN seite (=browser zu schmal) menMode2 = "links"; } else erzeugeMenu(i,j,abstaende[i]+feldbreite,yOff+((j-1)*feldhoehe));//erzeugt ebene2 menus } } } menuInitOK = true; } //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ //+++ Highlight und Zeige Funktionen +++ openDiv1=0; //gibt an, welches ebene-1-div offen ist openDiv2=0; //gibt an, welches ebene-2-div offen ist function zeige(pfad1,pfad2,pfad3,boolSub){ //zeigt ein div an, setzt evtl. highlights/low //pfad1 = Nummer des Hauptmenupunkts; pfad2 = Nummer des ebene1 punkts; pfad3 = Nummer des ebene2 punkts if(typeof to!="undefined") window.clearTimeout(to); //fals close-mechanismus ausgelöst war: reset (=stop) //von leer auf hauptbutton if(openDiv1==0 && pfad2==0 && pfad3==0) { zeige3Div(pfad1);openDiv1=pfad1; } //von ebene1 auf ebene1 oder von ebene2 auf anderen ebene1-punkt else if(openDiv1==pfad1 && pfad2!=0 && pfad3==0 && openDiv2!=pfad1+"_"+pfad2) { switchImgHiTop(pfad1); //hauptbutton highlight if(openDiv2!=0) switchImgLoS(eval("jsimg"+openDiv2+"_0")); //ebene1 button lo; für den fall eines wechsels von ebene2 zu ebene1(anderer punkt) if(openDiv2!=0){ hide3Div(openDiv2);openDiv2=0;} if(boolSub) {zeige3Div(pfad1+"_"+pfad2);openDiv2=pfad1+"_"+pfad2;} } //von ebene1 zum gleichen hauptbutton else if(openDiv1==pfad1 && pfad2==0) { if(openDiv2!=0) {hide3Div(openDiv2);openDiv2=0;} } //von ebene1 zu anderem hauptbutton else if(openDiv1!=0 && openDiv1!=pfad1 && pfad2==0) { switchImgLoTop(openDiv1); //hauptbutton lo versteckeLO(eval("jsbm"+openDiv1));versteckeLO(eval("jstm"+openDiv1));versteckeLO(eval("jslm"+openDiv1)); if(openDiv2!=0) { hide3Div(openDiv2);openDiv2=0;} zeige3Div(pfad1);openDiv1=pfad1; } //von ebene1 zu ebene2 else if(openDiv2!=0 && openDiv2==pfad1+"_"+pfad2 && pfad3!=0) { switchImgHiS(eval("jsimg"+pfad1+"_"+pfad2+"_0")); //ebene1 button highlight } //von ebene2 zu gleichem ebene1-button else if(openDiv2!=0 && openDiv2!=pfad1+"_"+pfad2 && pfad3==0) { switchImgLoS(eval("jsimg"+openDiv2+"_0")); //ebene1 button lo hide3Div(openDiv2);openDiv2=0; if(boolSub) {zeige3Div(pfad1+"_"+pfad2);openDiv2=pfad1+"_"+pfad2;} } } //unterfunktionen von zeige() --------- function zeige3Div(namePart){ zeigeLO(eval("jsbm"+namePart)); zeigeLO(eval("jstm"+namePart)); zeigeLO(eval("jslm"+namePart)); } function hide3Div(namePart){ versteckeLO(eval("jsbm"+namePart)); versteckeLO(eval("jstm"+namePart)); versteckeLO(eval("jslm"+namePart)); } //------------------------------------- function verstecke(){ //leitet ein: verstecke div, setze evtl highlight/low to = window.setTimeout("verstecke2()",500); } function verstecke2(){ //wenn es offenes div auf ebene 2 gibt -> schliessen if(openDiv1!=0) { //wenn es offenes div auf ebene 1 gibt -> schliessen if(openDiv2!=0) { //wenn es offenes div auf ebene 2 gibt -> schliessen hide3Div(openDiv2); switchImgLoS("jsimg"+openDiv2+"_0"); openDiv2=0;} hide3Div(openDiv1); switchImgLoTop(openDiv1); openDiv1=0; } OpenLayer(); } //--- Img Funktionen ------------------------------------------------- function switchImgHi(imgName) {imgName.src = imgHi.src;} function switchImgLo(imgName) {imgName.src = imgLo.src;} function switchImgHiS(imgName) {imgName.src = imgHiS.src;} //für die mit submenu function switchImgLoS(imgName) {imgName.src = imgLoS.src;} //für die mit submenu //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++ //++++ Funktionen für die Hauptmenupunkte function CloseLayer(nr){ if(document.layers){ str_obj=".visibility='hide'"; } else { str_obj=".style.visibility='hidden'"; } x=1; layer_obj=MM_findObj("dhtml"+x); while(layer_obj){ eval("layer_obj"+str_obj); layer_obj=MM_findObj("dhtml"+x++) } if(!document.layers){ j=1; while(document.forms[j]){ if( (document.forms[j].name!="vis") && (document.forms[j].name!="loginform") && (document.forms[j].name!="logoutform") && (document.forms[j].name!="searchform") ){ for(var i=0;i2")) { if(winBreite<=minBrowsWidth && menMode=="rechts"){ x = abstaende[abstaende.length-1]-feldbreite; setX(eval("jsbm"+anzahlMains+"_"+j),x); setX(eval("jstm"+anzahlMains+"_"+j),x); setX(eval("jslm"+anzahlMains+"_"+j),x); newMenMode="links"; } else if (winBreite>minBrowsWidth && menMode=="links"){ x = abstaende[abstaende.length-1]+feldbreite; setX(eval("jsbm"+anzahlMains+"_"+j),x); setX(eval("jstm"+anzahlMains+"_"+j),x); setX(eval("jslm"+anzahlMains+"_"+j),x); newMenMode="rechts"; } } } } menMode = newMenMode; } */ function korrigiereRechtestesMenu(){ var winBreite = getWidthWindowInner(); var x; var newMenMode = menMode; var newMenMode2 = menMode2; var az = anzahlMains-1; var kante1 = abstaende[abstaende.length-1]+(2*feldbreite); //rechter rand (xPos) des submenus des menus ganz rechts var kante2 = abstaende[abstaende.length-2]+(2*feldbreite); //rechter rand (xPos) des submenus des 2. menus von rechts if (menuInitOK) { for(var j=1;j2")) { if(winBreite<=kante1 && menMode=="rechts"){ x = abstaende[abstaende.length-1]-feldbreite; setX(eval("jsbm"+anzahlMains+"_"+j),x); setX(eval("jstm"+anzahlMains+"_"+j),x); setX(eval("jslm"+anzahlMains+"_"+j),x); newMenMode="links"; } else if (winBreite>kante1 && menMode=="links"){ x = abstaende[abstaende.length-1]+feldbreite; setX(eval("jsbm"+anzahlMains+"_"+j),x); setX(eval("jstm"+anzahlMains+"_"+j),x); setX(eval("jslm"+anzahlMains+"_"+j),x); newMenMode="rechts"; } } } for(var j=1;j2")) { if(winBreite<=kante2 && menMode2=="rechts"){ x = abstaende[abstaende.length-2]-feldbreite; setX(eval("jsbm"+az+"_"+j),x); setX(eval("jstm"+az+"_"+j),x); setX(eval("jslm"+az+"_"+j),x); newMenMode2="links"; } else if (winBreite>kante2 && menMode2=="links"){ x = abstaende[abstaende.length-2]+feldbreite; setX(eval("jsbm"+az+"_"+j),x); setX(eval("jstm"+az+"_"+j),x); setX(eval("jslm"+az+"_"+j),x); newMenMode2="rechts"; } } } } menMode = newMenMode; menMode2 = newMenMode2; } onresize=korrigiereRechtestesMenu; //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++