// Use Freely as long as following disclaimer is intact :: //--------------------------------------------------------------- // Cross Browser Multi-Orientation Menu v1.5 17th August 2004 // This script written by Rik Comery. www.ricom.co.uk // For support, visit the "Resources" section at www.ricom.co.uk // All rights reserved. // Featured in the SimplytheBest DHTML Scripts Library at http://simplythebest.net/scripts/ // MENU ITEMS // // DUPLICATE THIS ENTIRE SECTION FOR MULTIPLE MENUS. PLEASE SEE THE INSTRUCTIONS FILE FOR DETAILS /// var Menu1 = new Array () var subMenu1 = new Array () Menu1[0] = new Array(" Home ", "/index.html", "_top", "left"); subMenu1[0] = new Array(); Menu1[1] = new Array(" VirtualOffice Features ", "/advantage.html", "_top", "left"); subMenu1[1] = new Array(); subMenu1[1][0] = new Array("FAQs", "/advantage_more.html?area=faq", "_top"); subMenu1[1][1] = new Array("Virtual TA", "/advantage_more.html?area=qbot", "_top"); subMenu1[1][2] = new Array("Course Announcements", "/advantage_more.html?area=announcments", "_top"); subMenu1[1][3] = new Array("Course Documents", "/advantage_more.html?area=docs", "_top"); subMenu1[1][4] = new Array("Course Drop Boxes", "/advantage_more.html?area=dropbox", "_top"); subMenu1[1][5] = new Array("Security", "/neighborhood_watch.html", "_top"); subMenu1[1][6] = new Array("More Features", "/advantage_more.html?area=more", "_top"); Menu1[2] = new Array(" The VirtualOffice Advantage ", "/who_eoh.html", "_top", "left"); subMenu1[2] = new Array(); Menu1[3] = new Array(" Demo ", "/vo_demo.html", "_top", "left"); subMenu1[3] = new Array(); Menu1[4] = new Array(" Pricing ", "/pricing.html", "_top", "left"); subMenu1[4] = new Array(); Menu1[5] = new Array(" Sign Up ", "https://www.eofficehours.com/subscribe_info.html", "_top", "left"); subMenu1[5] = new Array(); subMenu1[5][0] = new Array(" Educator Sign Up ", "https://www.eofficehours.com/subscribe.html", "_top"); subMenu1[5][1] = new Array(" Commercial Sign Up ", "https://www.eofficehours.com/subscribe.html?commercial_signup=1", "_top"); Menu1[6] = new Array(" Login ", "https://www.eofficehours.com/virtualoffice/admin/login.html", "_top", "left"); subMenu1[6] = new Array(); /// FORMAT MENU /// menuStyle = "flat" // Menu Style (flat, 3d) cellPadding = "3" // Cell Padding cellBorder = 1 // Border width (for no border, enter 0) THIS VALUE APPLIES TO ALL MENUS verticalOffset = "0" // Vertical offset of Sub Menu. horizontalOffset = "0" // Horizontal offset of Sub Menu. subMenuDelay = 1 // Time sub menu stays visible for (in seconds). THIS VALUE APPLIES TO ALL MENUS subIndicate = 0 // Show if a sub menu is present (use 0 for "no") THIS VALUE APPLIES TO ALL MENUS indicator = "" // Symbol to show if a sub menu is present (subIndicate must be to set to 1) // Use standard HTML tag. You can use a character instead of an image. // e.g. indicator = ">" subMenuTransparency = "85" // Opacity of sub menus. 0 - 100. (IE Only.) // Main Menu Items menuWidth = "0" // Width of menu item. Use 0 for default borderColor = "#999999" // Border Colour (flat mode only) borderHighlight = "#97BBD3" // Border Highlight Colour (3d mode only) borderShadow = "#31556D" // Border Shadow Colour (3d mode only) menuBackground = "#0A3266" // Cell Background Colour menuHoverBackground = "beige" // Cell Background Colour on mouse rollover menuLoginBackground = "E0B725" fontFace = "arial" // Font Face fontColour = "#FFFFFF" // Font Colour fontHoverColour = "#2b83c4" // Font Colour on mouse rollover fontSize = "9pt" // Font Size fontDecoration = "none" // Style of the link text (none, underline, overline, line-through) fontWeight = "normal" // Font Weight (normal, bold) // Sub Menu Items smenuWidth = "0" // Width of sub menu item. Use 0 for default sborderColor = "#999999" // Border Colour (flat mode only) sborderHighlight = "#E9E9E2" // Border Highlight Colour (3d mode only) sborderShadow = "#83837C" // Border Shadow Colour (3d mode only) smenuBackground = "beige" // Cell Background Colour smenuHoverBackground = "#2b83c4" // Cell Background Colour on mouse rolloverr sfontFace = "arial" // Font Face sfontColour = "#2b83c4" // Font Colour sfontHoverColour = "#FFFFFF" // Font Colour on mouse rollover sfontSize = "9pt" // Font Size sfontDecoration = "none" // Style of the link text (none, underline, overline, line-through) sfontWeight = "normal" // Font Weight (normal, bold) quantity = 1 /// END FORMAT MENU //// /// DO NOT EDIT BELOW THIS LINE /// // Browser Sniffer var isIE = (document.getElementById && document.all)?true:false; var isNS4 = (document.layers)?true:false; var isNS6 = (document.getElementById && !document.all)?true:false; var timer; var obj = (isIE)?"document.all":"document.getElementById" // Menu Styles function createStyles(quant){ styleBorder=(menuStyle.split(",")[quant-1].toLowerCase() == "flat")?cellBorder:0 document.writeln (''); } // Build and show the main menu items function showMenus(quant,definedOrientation) { createStyles(quant); if(definedOrientation!=""){orientation=definedOrientation} if (orientation.toLowerCase() == "vertical"){document.writeln ('')} else{document.writeln ('
')} for (x=0; x') document.writeln (''); if (orientation.toLowerCase()=="vertical") document.writeln('') } if (orientation.toLowerCase() == "vertical"){document.writeln ('
'); if (subIndicate == 1&&eval("subMenu"+quant)[x].length>=1){ document.writeln('');} document.writeln ('
'); document.writeln (''+eval("Menu"+quant)[x][0]+''); document.writeln (''+indicator+'
');} else{document.writeln ('');} // Build the sub menu items for (x=0; x 0) { document.writeln (''); } } } // Change colour or menu and submenu items when the mouse hovers over. function highlightMenu(element,mainMenu,dropMenu,state,quant) { hoverMenu(); state=(state == "hover")?"rcMenuHover"+quant:"rcMenuStatic"+quant if (element == "sub") { for (x=0; x < eval("subMenu"+quant)[mainMenu].length; x++) { if (eval("subMenu"+quant)[mainMenu][x][1].indexOf("#") == -1){ eval(obj+'("'+quant+'subMenu'+mainMenu+x+'").className = "rcSubMenuStatic'+quant+'"') eval(obj+'("'+quant+'subLink'+mainMenu+x+'").className = "rcSubMenuStatic'+quant+'"') } } if (eval("subMenu"+quant)[mainMenu][dropMenu][1].indexOf("#") == -1) { eval(obj+'("'+quant+'subMenu'+mainMenu+dropMenu+'").className="rcSubMenuHover'+quant+'"') eval(obj+'("'+quant+'subLink'+mainMenu+dropMenu+'").className="rcSubMenuHover'+quant+'"') } } else { eval(obj+'("'+quant+'cell'+mainMenu+'").className = "'+state+'"') eval(obj+'("'+quant+'mainLink'+mainMenu+'").className = "'+state+'"') if (subIndicate == 1&&eval("subMenu"+quant)[mainMenu].length>=1) { eval(obj+'("'+quant+'cell'+mainMenu+'a").className = "'+state+'"') eval(obj+'("'+quant+'mainLink'+mainMenu+'a").className = "'+state+'"') } } } // Find positioning for sub menus function getOffset(obj, dim) { if(dim=="left") { oLeft = obj.offsetLeft; while(obj.offsetParent!=null) { oParent = obj.offsetParent oLeft += oParent.offsetLeft obj = oParent } return oLeft } else if(dim=="top") { oTop = obj.offsetTop; while(obj.offsetParent!=null) { oParent = obj.offsetParent oTop += oParent.offsetTop obj = oParent } return oTop } else if(dim=="width") { oWidth = obj.offsetWidth return oWidth } else if(dim=="height") { oHeight = obj.offsetHeight return oHeight } else { alert("Error: invalid offset dimension '" + dim + "' in getOffset()") return false; } } // Show sub menus function popDown(quant, param, id, orientation) { var cellBorderOffset = (isNS6)?cellBorder:eval(cellBorder*2) var browserAdjustment = (isNS6)?cellBorder:0 var menu; var button; if (id) { getOffset(eval(obj+'(id)'),'left'); getOffset(eval(obj+'(id)'),'top'); getOffset(eval(obj+'(id)'),'width'); getOffset(eval(obj+'(id)'),'height'); if (eval("Menu"+quant+"["+param+"][3]")=="right" && eval("subMenu"+quant+"["+param+"].length")>0) { oLeft=oLeft oLeft=oLeft+oWidth; getOffset(eval(obj+'("'+quant+'MENU'+param+'")'),'width'); oLeft=oLeft-oWidth ; alignAdjustment = cellBorder*2 + 1 } else { alignAdjustment = 0 oLeft=oLeft } } n = 0; while (n < eval("Menu"+quant).length) { menu = quant+"MENU"+n if (param == n) { theObj = eval(obj+'(menu)'); if (theObj) { theObj.style.visibility = "visible" if (orientation.toLowerCase()=="vertical"){ theObj.style.left=(menuStyle.split(",")[quant-1].toLowerCase()=="flat")?oLeft+oWidth+cellBorder+parseInt(horizontalOffset.split(",")[quant-1]):oLeft+oWidth+cellBorderOffset+parseInt(horizontalOffset.split(",")[quant-1]); theObj.style.top=(menuStyle.split(",")[quant-1].toLowerCase()=="flat")?oTop-cellBorder+parseInt(verticalOffset.split(",")[quant-1]):oTop+parseInt(verticalOffset.split(",")[quant-1])-browserAdjustment} else{ theObj.style.left=(menuStyle.split(",")[quant-1].toLowerCase()=="flat")?oLeft-cellBorder+parseInt(horizontalOffset.split(",")[quant-1])+alignAdjustment:oLeft+parseInt(horizontalOffset.split(",")[quant-1])-browserAdjustment+alignAdjustment; theObj.style.top=(menuStyle.split(",")[quant-1].toLowerCase()=="flat")?oTop+oHeight+cellBorder+parseInt(verticalOffset.split(",")[quant-1]):oTop+oHeight+cellBorderOffset+parseInt(verticalOffset.split(",")[quant-1]);} } highlightMenu('main',n,'','hover',quant) if (eval("subMenu"+quant)[param].length > 0) { for (x=0; x 0)?setDelay:1 timer = setTimeout("popDown("+quant+","+(eval("Menu"+quant).length + 1)+")",delay) } // when you click the box, perform the same function as if the user had clicked the hyperlink function tdMouseClick(theElement) { eval(obj+'(theElement).click()') }