//** All Levels Navigational Menu- (c) Dynamic Drive DHTML code library: http://www.dynamicdrive.com
//** Script Download/ instructions page: http://www.dynamicdrive.com/dynamicindex1/ddlevelsmenu/
//** Usage Terms: http://www.dynamicdrive.com/notice.htm
//** July 7th, 08'- Creation Date
//** July 16th, 08'- Updated to v 1.3:
//1) Adds "Side Bar" orientation option.
//2) Drop Down Menus now auto adjust their positioning if too close to either right or bottom window edges.
//3) Enhanced IFRAME shim "coverage" on the page.
//** July 19th, 08'- Updated to v 1.31: Drop down menu now positions at top of window edge if there's neither room downwards or upwards to settle.
//** Aug 13th, 08'- v1.32: Moved "rel" attribute from menu's
elements to inner , for validation reasons
//** Sept 10th, 08'- Updated to v 1.4:
//1) Added optional "sliding" animation when sub menus are revealed.
//2) Arrow images now dynamically positioned, instead of relying on CSS's "right" property
//** Oct 11th, 08'- Updated to v 1.5:
//1) Sliding animation behavior tweaked
//2) Added ability to disable iframeshim, customize speed of sliding animation
//** Dec 23rd, 08'- Updated to v 2.0:
//1) Animation speed refined to be function of time (ie: 1 sec)
//2) Added two animations that can be individually enabled/disabled- "slide in" and "fade in".
//3) Script now automatically moves HTML for all sub menus to the end of the page, to avoid any containership issues if they are nested in other elements.
//** Jan 12, 09'- Updated to v 2.1:
//1) Added ability to disable the arrow images from the top level items (see option "showarrow")
//2) For Top Level Menu items containing a SPAN element (for sliding doors technique), arrow images are inserted inside SPAN.
var ddlevelsmenu={
enableshim: true, //enable IFRAME shim to prevent drop down menus from being hidden below SELECT or FLASH elements? (tip: disable if not in use, for efficiency)
arrowpointers:{
downarrow: ["/ecblank.gif", 1,1], //[path_to_down_arrow, arrowwidth, arrowheight]
rightarrow: ["/a556c5/homepage.nsf/arrow-right.gif", 12,12], //[path_to_right_arrow, arrowwidth, arrowheight]
showarrow: {toplevel: false, sublevel: true} //Show arrow images on top level items and sub level items, respectively?
},
hideinterval: 200, //delay in milliseconds before entire menu disappears onmouseout.
effects: {enableswipe: true, enablefade: true, duration: 500},
httpsiframesrc: "blank.htm", //If menu is run on a secure (https) page, the IFRAME shim feature used by the script should point to an *blank* page *within* the secure area to prevent an IE security prompt. Specify full URL to that page on your server (leave as is if not applicable).
///No need to edit beyond here////////////////////
topmenuids: [], //array containing ids of all the primary menus on the page
topitems: {}, //object array containing all top menu item links
subuls: {}, //object array containing all ULs
lastactivesubul: {}, //object object containing info for last mouse out menu item's UL
topitemsindex: -1,
ulindex: -1,
hidetimers: {}, //object array timer
shimadded: false,
nonFF: !/Firefox[\/\s](\d+\.\d+)/.test(navigator.userAgent), //detect non FF browsers
getoffset:function(what, offsettype){
return (what.offsetParent)? what[offsettype]+this.getoffset(what.offsetParent, offsettype) : what[offsettype]
},
getoffsetof:function(el){
el._offsets={left:this.getoffset(el, "offsetLeft"), top:this.getoffset(el, "offsetTop")}
},
getwindowsize:function(){
this.docwidth=window.innerWidth? window.innerWidth-10 : this.standardbody.clientWidth-10
this.docheight=window.innerHeight? window.innerHeight-15 : this.standardbody.clientHeight-18
},
gettopitemsdimensions:function(){
for (var m=0; m0){
this.shimmy.topshim.style.left=scrollX+"px"
this.shimmy.topshim.style.top=scrollY+"px"
this.shimmy.topshim.style.width="99%"
this.shimmy.topshim.style.height=topgap+"px" //distance from top window edge to top of menu item
}
if (bottomgap>0){
this.shimmy.bottomshim.style.left=scrollX+"px"
this.shimmy.bottomshim.style.top=header._offsets.top + header._dimensions.h +"px"
this.shimmy.bottomshim.style.width="99%"
this.shimmy.bottomshim.style.height=bottomgap+"px" //distance from bottom of menu item to bottom window edge
}
}
},
hideshim:function(){
this.shimmy.topshim.style.width=this.shimmy.bottomshim.style.width=0
this.shimmy.topshim.style.height=this.shimmy.bottomshim.style.height=0
},
buildmenu:function(mainmenuid, header, submenu, submenupos, istoplevel, dir){
header._master=mainmenuid //Indicate which top menu this header is associated with
header._pos=submenupos //Indicate pos of sub menu this header is associated with
header._istoplevel=istoplevel
if (istoplevel){
this.addEvent(header, function(e){
ddlevelsmenu.hidemenu(ddlevelsmenu.subuls[this._master][parseInt(this._pos)])
}, "click")
}
this.subuls[mainmenuid][submenupos]=submenu
header._dimensions={w:header.offsetWidth, h:header.offsetHeight, submenuw:submenu.offsetWidth, submenuh:submenu.offsetHeight}
this.getoffsetof(header)
submenu.style.left=0
submenu.style.top=0
submenu.style.visibility="hidden"
this.addEvent(header, function(e){ //mouseover event
if (!ddlevelsmenu.isContained(this, e)){
var submenu=ddlevelsmenu.subuls[this._master][parseInt(this._pos)]
if (this._istoplevel){
ddlevelsmenu.css(this, "selected", "add")
clearTimeout(ddlevelsmenu.hidetimers[this._master][this._pos])
}
ddlevelsmenu.getoffsetof(header)
var scrollX=window.pageXOffset? window.pageXOffset : ddlevelsmenu.standardbody.scrollLeft
var scrollY=window.pageYOffset? window.pageYOffset : ddlevelsmenu.standardbody.scrollTop
var submenurightedge=this._offsets.left + this._dimensions.submenuw + (this._istoplevel && dir=="topbar"? 0 : this._dimensions.w)
var submenubottomedge=this._offsets.top + this._dimensions.submenuh
//Sub menu starting left position
var menuleft=(this._istoplevel? this._offsets.left + (dir=="sidebar"? this._dimensions.w : 0) : this._dimensions.w)
if (submenurightedge-scrollX>ddlevelsmenu.docwidth){
menuleft+= -this._dimensions.submenuw + (this._istoplevel && dir=="topbar" ? this._dimensions.w : -this._dimensions.w)
}
submenu.style.left=menuleft+"px"
//Sub menu starting top position
var menutop=(this._istoplevel? this._offsets.top + (dir=="sidebar"? 0 : this._dimensions.h) : this.offsetTop)
if (submenubottomedge-scrollY>ddlevelsmenu.docheight){ //no room downwards?
if (this._dimensions.submenuh
";
if (flag== "new")
path = xmlpath + "/" + xmlFile + "?ReadViewEntries&start=" + start + "&count="+ record
else
path = xmlpath + "/" + xmlFile + "?ReadViewEntries&count=-1"
xmlhttp=null;
if (window.XMLHttpRequest)
{ // code for IE7, Firefox, Opera, etc.
xmlhttp =new XMLHttpRequest();
}
else if (window.ActiveXObject)
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
if (xmlhttp!=null)
{
if (window.XMLHttpRequest) {
xmlhttp.onreadystatechange=function() {
state_Change();
}
} else {
xmlhttp.onreadystatechange=state_Change();
}
xmlhttp.open("GET",path,false);
xmlhttp.send(null);
}
else
{
alert("Your browser does not support XMLHTTP.");
}
//alert("A")
}
function loadDefaultXMLSSLPrint(xmlpath, xmlFile, start, record, flag)
{
document.getElementById("SPNewsPrint").innerHTML = "
";
if (flag== "new")
path = xmlpath + "/" + xmlFile + "?ReadViewEntries&start=" + start + "&count="+ record
else
path = xmlpath + "/" + xmlFile + "?ReadViewEntries&count=-1"
xmlhttp=null;
if (window.XMLHttpRequest)
{ // code for IE7, Firefox, Opera, etc.
xmlhttp =new XMLHttpRequest();
}
else if (window.ActiveXObject)
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
if (xmlhttp!=null)
{
if (window.XMLHttpRequest) {
xmlhttp.onreadystatechange=function() {
state_Change();
}
} else {
xmlhttp.onreadystatechange=state_Change();
}
xmlhttp.open("GET",path,false);
xmlhttp.send(null);
}
else
{
alert("Your browser does not support XMLHTTP.");
}
//alert("A")
}
function state_Change()
{
var parser = "";
if (xmlhttp.readyState==4)
{// 4 = "loaded"
if (xmlhttp.status==200)
{// 200 = "OK"
if (window.ActiveXObject) {
source = new ActiveXObject("Microsoft.XMLDOM");
source.async = false;
source.loadXML(xmlhttp.responseText);
} else {
parser=new DOMParser();
source=parser.parseFromString(xmlhttp.responseText,"text/xml");
//retrieveNodevalues(vnodes);
//source=xmlhttp.responseXML;
}
//alert(xmlhttp.responseText);
if(source.parseError.errorCode != 0)
showError();
}
else
{
alert("Problem retrieving XML data:" + xmlhttp.statusText);
}
}
}
function loadDefaultXMLRestrictToCategory(xmlpath, xmlFile, key, start, record)
{
document.getElementById("SPNews").innerHTML = "
";
path = xmlpath + "/" + xmlFile + "?ReadViewEntries&RestrictToCategory=" + key + "&start=" + start + "&count="+ record
xmlhttp=null;
if (window.XMLHttpRequest)
{ // code for IE7, Firefox, Opera, etc.
xmlhttp =new XMLHttpRequest();
}
else if (window.ActiveXObject)
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
if (xmlhttp!=null)
{
if (window.XMLHttpRequest) {
xmlhttp.onreadystatechange=function() {
state_Change();
}
} else {
xmlhttp.onreadystatechange=state_Change();
}
xmlhttp.open("GET",path,false);
xmlhttp.send(null);
}
else
{
alert("Your browser does not support XMLHTTP.");
}
}
//Defines the getReadyState function
// 0 Object is not initialized
// 1 Loading object is loading data
// 2 Loaded object has loaded data
// 3 Data from object can be worked with
// 4 Object completely initialized
function getReadyState()
{
if (source.readyState == 4)
return true;
setTimeout("getReadyState()", 100);
}
//Defines the showError() function
function showError()
{
var strError = new String;
var err = source.parseError;
strError = 'Error!\n' +
'file url: '+err.url +' \n'+
'line no.:'+err.line +'\n'+
'char: '+ err.linepos + '\n' +
'source: '+err.srcText+'\n'+
'code: '+err.errorCode+'\n'+
'description: '+err.reason+'\n';
//document.all.item("HTMLresults").innerHTML = strError;
alert(strError);
}
function retrieveNodevalues(key)
{
var nresult="";
//document.getElementById("sphell").innerHTML = "blank2a"
//if (getReadyState())
// {
if (window.ActiveXObject) {
source.setProperty("SelectionLanguage", "XPath");
var node = source.selectNodes(key);
for(i = 0; i < node.length ; i++)
{
nresult = nresult + node.item(i).text
}
} else {
//alert("CIM")
//alert(source.readyState)
//document.getElementById("iddummy").innerHTML="start2"
xmlDoc=document.implementation.createDocument("","",null);
//document.getElementById("iddummy").innerHTML="start2a"
xmlDoc.async=false;
//document.getElementById("iddummy").innerHTML="start2b"
xmlDoc = xmlhttp.responseXML;
//document.getElementById("iddummy").innerHTML="start2c"
var mnodes=xmlDoc.evaluate(key, xmlDoc, null, XPathResult.ANY_TYPE,null);
//var mnodes=source.evaluate(key, source, null, XPathResult.ANY_TYPE,null);
var mresult=mnodes.iterateNext();
//document.getElementById("iddummy").innerHTML="start3"
while(mresult)
{
nresult = nresult + mresult.childNodes[0].nodeValue
mresult=mnodes.iterateNext();
}
}
// }
return nresult;
}
function retrieveNodevaluesPrint(key)
{
var nresult="";
//alert(key)
//if (getReadyState())
// {
if (window.ActiveXObject) {
source.setProperty("SelectionLanguage", "XPath");
var node = source.selectNodes(key);
for(i = 0; i < node.length ; i++)
{
if((i+1)%2==0) {
nresult = nresult + node.item(i).text + "| | |
"
} else {
nresult = "" + nresult + node.item(i).text
}
}
} else {
xmlDoc=document.implementation.createDocument("","",null);
xmlDoc.async=false;
xmlDoc = xmlhttp.responseXML;
var mnodes=xmlDoc.evaluate(key, xmlDoc, null, XPathResult.ANY_TYPE,null);
var mresult=mnodes.iterateNext();
i=0
while(mresult)
{
if((i+1)%2==0) {
nresult = nresult + mresult.childNodes[0].nodeValue + "
| | |
"
} else {
nresult = "" + nresult + mresult.childNodes[0].nodeValue
}
//nresult = nresult + mresult.childNodes[0].nodeValue
i=i+1
mresult=mnodes.iterateNext();
}
}
return nresult;
}
function fncNwPaging(currpg,jourpath)
{
var xpage="";
var tmpnxt ="";
var tmpprv = "";
if ( currpg <= xprvpg) {
xprvpg = xprvpg - jmaxpg;
xnxtpg = xnxtpg - jmaxpg;
}
if ( currpg >= xnxtpg) {
xnxtpg = xnxtpg + jmaxpg;
xprvpg = xprvpg + jmaxpg;
}
if (jloop < jmaxpg) {
jmaxpg = jloop
}
//alert(jmaxpg + "heelo")
for(g =0; g jmaxpg) {
if ((g+1+xprvpg) == currpg) {
xpage = xpage + ""+ (g + xprvpg +1)+ " "
} else {
xpage = xpage + "" + (g + xprvpg +1) + " "
}
} else {
if (currpg == (g+1)) {
xpage = xpage + ""+ (g + 1) + " "
} else {
xpage = xpage + "" + (g + 1) + " "
}
}
}
if (jloop > 0) {
if (xnxtpg >= jloop) {
//tmpnxt = "»"
tmpnxt = "
"
} else {
//tmpnxt = "»"
tmpnxt = "
"
}
if (xprvpg == 0) {
// tmpprv = "«"
tmpprv = "
"
} else {
//tmpprv = "«"
tmpprv = "
"
}
}
document.getElementById("nwPaging").innerHTML = tmpprv +" " + xpage +" " + tmpnxt
}
function fncNwPagingPrinted(currpg,jourpath)
{
var xpage="";
var tmpnxt ="";
var tmpprv = "";
if ( currpg <= xprvpg) {
xprvpg = xprvpg - jmaxpg;
xnxtpg = xnxtpg - jmaxpg;
}
if ( currpg >= xnxtpg) {
xnxtpg = xnxtpg + jmaxpg;
xprvpg = xprvpg + jmaxpg;
}
if (jloop < jmaxpg) {
jmaxpg = jloop
}
//alert(jmaxpg + "heelo")
for(g =0; g jmaxpg) {
if ((g+1+xprvpg) == currpg) {
xpage = xpage + ""+ (g + xprvpg +1)+ " "
} else {
xpage = xpage + "" + (g + xprvpg +1) + " "
}
} else {
if (currpg == (g+1)) {
xpage = xpage + ""+ (g + 1) + " "
} else {
xpage = xpage + "" + (g + 1) + " "
}
}
}
if (jloop > 0) {
if (xnxtpg >= jloop) {
//tmpnxt = "»"
tmpnxt = "
"
} else {
//tmpnxt = "»"
tmpnxt = "
"
}
if (xprvpg == 0) {
// tmpprv = "«"
tmpprv = "
"
} else {
//tmpprv = "«"
tmpprv = "
"
}
}
document.getElementById("nwPaging").innerHTML = tmpprv +" " + xpage +" " + tmpnxt
}
function fncNwPagingCat(currpg,jourpath,catCookie)
{
var xpage="";
var tmpnxt ="";
var tmpprv = "";
if ( currpg <= xprvpg) {
xprvpg = xprvpg - jmaxpg;
xnxtpg = xnxtpg - jmaxpg;
}
if ( currpg >= xnxtpg) {
xnxtpg = xnxtpg + jmaxpg;
xprvpg = xprvpg + jmaxpg;
}
if (jloop < jmaxpg) {
jmaxpg = jloop
}
for(g =0; g jmaxpg) {
if ((g+1+xprvpg) == currpg) {
xpage = xpage + ""+ (g + xprvpg +1)+ " "
} else {
xpage = xpage + "" + (g + xprvpg +1) + " "
}
} else {
if (currpg == (g+1)) {
xpage = xpage + ""+ (g + 1) + " "
} else {
xpage = xpage + "" + (g + 1) + " "
}
}
}
if (jloop > 0) {
if (xnxtpg >= jloop) {
//tmpnxt = "»"
tmpnxt = "
"
} else {
//tmpnxt = "»"
tmpnxt = "
"
}
if (xprvpg == 0) {
// tmpprv = "«"
tmpprv = "
"
} else {
//tmpprv = "«"
tmpprv = "
"
}
}
document.getElementById("nwPaging").innerHTML = tmpprv +" " + xpage +" " + tmpnxt
}
function fncPgCall(currpg,jourpath)
{
var tmpstart = ""
tmpstart = (currpg * jcount) - (jcount -1)
loadDefaultXMLSSL(jourpath, viewname, tmpstart, jcount, "new")
fetchHTML = retrieveNodevalues(vnodes);
document.getElementById("SPNews").innerHTML = "";
fncNwPaging(currpg,jourpath)
}
function fncPgCallPrinted(currpg,jourpath)
{
var tmpstart = ""
tmpstart = (currpg * jcount) - (jcount -1)
loadDefaultXMLSSLPrint(jourpath, "lsvPublishedPrinted", tmpstart, jcount, "new")
fetchHTML = retrieveNodevaluesPrint(vnodes);
document.getElementById("SPNewsPrint").innerHTML = "";
fncNwPagingPrinted(currpg,jourpath)
}
function fncPgCallCat(currpg,jourpath,catCookie)
{
//falert("crap")
var tmpstart = ""
tmpstart = (currpg * jcount) - (jcount -1)
//alert("crap1")
loadDefaultXMLRestrictToCategory(jourpath, viewname,catCookie, tmpstart, jcount)
//alert("A")
fetchHTML = retrieveNodevalues(vnodes);
document.getElementById("SPNews").innerHTML = "";
fncNwPagingCat(currpg,jourpath,catCookie)
}
/*
old set cookie
function setCookie(c_name,value,expiredays)
{
var exdate=new Date();exdate.setDate(exdate.getDate()+expiredays);
document.cookie=c_name+ "=" +escape(value)+
((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
}
*/
function setCookie(name, value, expires, path, domain, secure)
{
document.cookie = name + "=" + escape(value) + ((expires) ? "; expires=" + expires : "") + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + ((secure) ? "; secure" : "");
}
function getCookie(c_name)
{
if (document.cookie.length>0)
{
c_start=document.cookie.indexOf(c_name + "=");
if (c_start!=-1)
{
c_start=c_start + c_name.length+1;
c_end=document.cookie.indexOf(";",c_start);
if (c_end==-1) c_end=document.cookie.length;
return unescape(document.cookie.substring(c_start,c_end));
}
}
return "";
}
function DeleteCookie (name) {
alert(name)
// var exp = new Date();
// exp.setTime (exp.getTime() - 1);
document.cookie = name + "=" + "; expires=Thu, 01-Jan-70 00:00:01 GMT;"
}
function fncwindowopen(tmpURL) {
var strOpener = "resizable=yes,width=800,height=600,toolbar=no,menubar=no,scrollbars=yes,location=no,titlebar=no"
window.open(tmpURL,"",strOpener)
}
function GetFlash(param,xmlpath,xmlFile) {
document.getElementById("flvvideo").innerHTML = "
";
document.getElementById("flvtitle").innerHTML = "
Loading......";
document.getElementById("flvcontent").innerHTML = "";
var fnodes = "/viewentries/viewentry/entrydata[@name='FlashAttachmentFlash']/text"
var tnodes = "/viewentries/viewentry/entrydata[@name='FlashTitle']/text"
var cnodes = "/viewentries/viewentry/entrydata[@name='FlashDescription']/text"
LoadGetFlash(param,xmlpath,xmlFile)
var fHTML = retrieveNodevalues(fnodes);
var gHTML = retrieveNodevalues(tnodes);
var zHTML = retrieveNodevalues(cnodes);
document.getElementById("flvvideo").innerHTML = fHTML
document.getElementById("flvtitle").innerHTML = gHTML
document.getElementById("flvcontent").innerHTML = zHTML
}
function LoadGetFlash(param,xmlpath,xmlFile) {
path = "/"+ xmlpath + "/" + xmlFile + "?ReadViewEntries&RestrictToCategory=" + param
xmlhttp=null;
if (window.XMLHttpRequest)
{ // code for IE7, Firefox, Opera, etc.
xmlhttp =new XMLHttpRequest();
}
else if (window.ActiveXObject)
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
if (xmlhttp!=null)
{
if (window.XMLHttpRequest) {
xmlhttp.onreadystatechange=function() {
state_Change();
}
} else {
xmlhttp.onreadystatechange=state_Change();
}
xmlhttp.open("GET",path,false);
xmlhttp.send(null);
}
else
{
alert("Your browser does not support XMLHTTP.");
}
//alert("A")
}
function cycle3() {
var skey;
if (currentAd3 == imgCt3) {
currentAd3 = 0;
}
var banner3 = document.getElementById('adBanner3');
var link3 = document.getElementById('adLink3');
banner3.src=imgs3[currentAd3];
banner3.alt=alt3[currentAd3];
document.getElementById('adLink3').href=lnks3[currentAd3];
for (var m=0; m" + (m + 1) +""
} else {
skey = "rptspan" + m;
document.getElementById(skey).innerHTML = "" + (m + 1)+""
}
}
if (currentAd3 == 0) {
document.getElementById("spanbck").innerHTML = "«";
} else {
document.getElementById("spanbck").innerHTML = "«"
}
if (currentAd3 == (imgCt3-1)) {
document.getElementById("spanfwd").innerHTML = "»";
} else {
document.getElementById("spanfwd").innerHTML = "»"
}
currentAd3++;
}
function switch3(param) {
if (currentAd3 == imgCt3) {
currentAd3 = 0
}
var skey;
var banner3 = document.getElementById('adBanner3');
var link3 = document.getElementById('adLink3');
banner3.src=imgs3[param];
banner3.alt=alt3[param];
document.getElementById('adLink3').href=lnks3[param];
for (var m=0; m" + (m + 1) +""
} else {
skey = ("rptspan" + m);
document.getElementById(skey).innerHTML = "" + (m + 1)+""
}
}
if (currentAd3 == 0) {
document.getElementById("spanbck").innerHTML = "«";
} else {
document.getElementById("spanbck").innerHTML = "«"
}
if (currentAd3 == (imgCt3-1)) {
document.getElementById("spanfwd").innerHTML = "»"
} else {
document.getElementById("spanfwd").innerHTML = "»"
}
currentAd3++;
}
function spanbck() {
currentAd3--;
var skey;
if (currentAd3 == imgCt3) {
currentAd3 = 0
}
var banner3 = document.getElementById('adBanner3');
var link3 = document.getElementById('adLink3');
banner3.src=imgs3[currentAd3];
banner3.alt=alt3[currentAd3];
document.getElementById('adLink3').href=lnks3[currentAd3];
for (var m=0; m" + (m + 1) +""
} else {
skey = "rptspan" + m;
document.getElementById(skey).innerHTML = "" + (m + 1)+""
}
}
if (currentAd3 == 0) {
document.getElementById("spanbck").innerHTML = "«"
} else {
document.getElementById("spanbck").innerHTML = "«"
}
if (currentAd3 == (imgCt3-1)) {
document.getElementById("spanfwd").innerHTML = "»"
} else {
document.getElementById("spanfwd").innerHTML = "»"
}
}
/***********************************************
* AnyLink Vertical Menu- © Dynamic Drive (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/
//Contents for menu 1
var menu1=new Array()
menu1[0]='Technology & Operations'
menu1[1]='Solutions Centre'
menu1[2]='SAS on business analytics'
menu1[3]='Oracle on core banking'
menu1[4]='Temenos'
//Contents for menu 2, and so on
var menu2=new Array()
menu2[0]='Business Analytics White Papers'
menu2[1]='Core Banking'
//Contents for menu 3
var menu3=new Array()
menu3[0]='SAS on business analytics'
menu3[1]='Oracle on core banking'
menu3[2]='Temenos'
var disappeardelay=250 //menu disappear speed onMouseout (in miliseconds)
var horizontaloffset=2 //horizontal offset of menu from default location. (0-5 is a good value)
/////No further editting needed
var ie4=document.all
var ns6=document.getElementById&&!document.all
if (ie4||ns6)
document.write('')
function getposOffset(what, offsettype){
var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
var parentEl=what.offsetParent;
while (parentEl!=null){
totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
parentEl=parentEl.offsetParent;
}
return totaloffset;
}
function showhide(obj, e, visible, hidden, menuwidth){
if (ie4||ns6)
dropmenuobj.style.left=dropmenuobj.style.top=-500
dropmenuobj.widthobj=dropmenuobj.style
dropmenuobj.widthobj.width=menuwidth
if (e.type=="click" && obj.visibility==hidden || e.type=="mouseover")
obj.visibility=visible
else if (e.type=="click")
obj.visibility=hidden
}
function iecompattest(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}
function clearbrowseredge(obj, whichedge){
var edgeoffset=0
if (whichedge=="rightedge"){
var windowedge=ie4 && !window.opera? iecompattest().scrollLeft+iecompattest().clientWidth-15 : window.pageXOffset+window.innerWidth-15
dropmenuobj.contentmeasure=dropmenuobj.offsetWidth
if (windowedge-dropmenuobj.x-obj.offsetWidth < dropmenuobj.contentmeasure)
edgeoffset=dropmenuobj.contentmeasure+obj.offsetWidth
}
else{
var topedge=ie4 && !window.opera? iecompattest().scrollTop : window.pageYOffset
var windowedge=ie4 && !window.opera? iecompattest().scrollTop+iecompattest().clientHeight-15 : window.pageYOffset+window.innerHeight-18
dropmenuobj.contentmeasure=dropmenuobj.offsetHeight
if (windowedge-dropmenuobj.y < dropmenuobj.contentmeasure){ //move menu up?
edgeoffset=dropmenuobj.contentmeasure-obj.offsetHeight
if ((dropmenuobj.y-topedge)