// Script na zistenie verzie browsera */ var Opera7 = 0, Mozilla = 0, MSIE = 0, UAg = navigator.userAgent, strOffset = 0; if( UAg.indexOf("Opera") > -1) { strOffset = UAg.indexOf("Opera") +6; if( parseInt( UAg.substring( strOffset, UAg.indexOf( " ", strOffset))) >= 7) Opera7 = 1; } else if( UAg.indexOf("Mozilla") > -1 && UAg.indexOf("Gecko") > -1) { Mozilla = 1; } else if( UAg.indexOf("MSIE") > -1) { MSIE = 1; } // koniec "zistovacieho" skriptu */ function ToggleView(objMenu) { var myID = document.getElementById(objMenu), pocet_poloziek = document.getElementById('menu_items').value; if (myID.style.display=="none") { myID.style.display=""; for (i=1; i<=pocet_poloziek; i++) { toHide = "ID"+i+""; if (objMenu != toHide) { document.getElementById( toHide).style.display = "none"; } } } } var varTIMEOUT; //premenne, pouzivaju sa pri skryvani menu... var varOBJMENU; function hideMenu(objMenu) { if (objMenu) { varTIMEOUT = setTimeout( hideThis, 1000); varOBJMENU = objMenu; } else { clearTimeout( varTIMEOUT); } } function hideThis() { document.getElementById( varOBJMENU).style.display = "none"; } var varT; function centerMenu( withAnimation) { var myID = document.getElementById('menu'), myWW = 0, pocet_poloziek = document.getElementById('menu_items').value, sirka_polozky = document.getElementById('menu_item_width').value, sirka_menu = pocet_poloziek *sirka_polozky, pozicia = 0, oldPos = 0; // Zistime povodnu poziciu if( typeof(myID.style.posLeft) != 'undefined') { oldPos = myID.style.posLeft; } else if( typeof(myID.style.left) != 'undefined') { oldPos = myID.style.left; } if( typeof( oldPos) != 'number') oldPos = parseInt( oldPos); // Zistime aku metodu zistovania sirky okna dany prehliadac podporuje if ( typeof(window.outerWidth) != 'undefined') { myWW = window.outerWidth; } else if ( typeof(document.width) != 'undefined') { myWW = document.width; } else if ( typeof(document.body.clientWidth) != 'undefined') { myWW = document.body.clientWidth; } // Teda uz by sme mali mat zistenu sirku okna a zostava uz len vycentrovat // menu, aby bolo v strede. pozicia = parseInt( (myWW -sirka_menu)/2); if( pozicia < 2) { pozicia = 2; } // S animovany presunom menu (pri zmene velkosti okna) if( withAnimation) { // Poziciu menu zmenime iba ak sa skutocne zmenila... if( oldPos != pozicia) { if( MSIE || Opera7) { // Specialitka pre IE a ostatne prehliadace, ktore vyuzivaju jadro IE (e.g. // Opera). Specialne tie totiz vykonavaju "priebezne" onResize event, nie // az po ukonceni zmeny velkosti okna ked pustime lave tlacitko mysi. // Inac by vznikali komicke animacie. Takze sa pokusime trosku "oklamat" // prehliadac takto: clearTimeout( varT); varT = setTimeout( "animMenuMove( " +oldPos +", " +pozicia +");", 250); } else animMenuMove( oldPos, pozicia); } // Bez animovania presunu menu (pri nacitani stranky) } else { // Zistime si aku metodu urcovania polohy podporuje prehliadac if ( typeof(myID.style.posLeft) != 'undefined') { myID.style.posLeft = pozicia; } else if ( typeof(myID.style.left) != 'undefined') { myID.style.left = pozicia; } // Menu je najprv skryte, aby "neskakalo" kade-tade kvoli premiestnovaniu, // takze ho zobrazime, az ked bude premiestnene... if ( typeof( myID.style.visibility) != 'undefined') { myID.style.visibility = ''; } } } function animMenuMove( startPos, stopPos) { var myID = document.getElementById( 'menu'), left = false, // ukazovatel, ci sa menu ma pohybovat vpravo/vlavo i = startPos, step = 10, // o kolko pixelov sa ma posunut menu pri jednom kroku speed = 25; // v milisekundach // Zistime si, ci budeme menu pohybovat vlavo/vpravo if( startPos >stopPos) left = true; // Zistime, ci menu uz nahodou nie je na svojom mieste. Ak nie, tak ho tam // o "step" presunieme if( startPos != stopPos) { // ak k finalnej pozicii zostava menej ako "step" pixelov, tak uz menu // umiestnime na finalnu poziciu. Inac posunieme o "step" pixelov if( ( left && startPos -stopPos <=step) || ( !left && stopPos -startPos <=step)) i = stopPos; else if( left) { i = i -step; } else { i = i +step; } // Zistime si aku metodu urcovania polohy podporuje prehliadac if ( typeof(myID.style.posLeft) != 'undefined') { myID.style.posLeft = i; } else if ( typeof(myID.style.left) != 'undefined') { myID.style.left = i; } // Rekurzivne zavolame znova tuto funkciu, aby sme posuvali, az kym menu // nebude na mieste. V akych cas. intervaloch sa to ma vykonavat nam urcuje // premenna "speed" if( i != stopPos) setTimeout( "animMenuMove(" +i +", " +stopPos +");", speed); } }