// global variables --------------------------------------------- var browser; // browser variable var layerRef, styleSwitch; // browser difference vars var jump = 10; // window scrolling speed var miliwait = 20; // miliseconds to wait between scroll loops var scrolling = 0; // functions ------------------------------------------------------ // browser detect function browser_detect() { if(document.layers) browser="NS4"; else if(document.all) browser="IE4"; else if(document.getElementById) browser="DOM2"; else browser="DOM2"; if(browser=="NS4") { layerRef="document.layers"; styleSwitch=""; } if(browser=="IE4") { layerRef="document.all"; styleSwitch=".style"; } if(browser=="DOM2") { // ns6 or ie5 layerRef="document.getElementById"; styleSwitch=".style"; jump=10; // ns6 is slow as hell } if((browser=="NS4") || (browser=="DOM2")) { // unix? slow scroll var agent = navigator.userAgent.toLowerCase(); if(agent.indexOf("x11") != -1) { if(browser=="DOM2") jump=10; else jump=3; } } } // clip a layer function clipLayer(myLayer,top,right,bottom,left) { if(browser=="NS4") { eval('document.layers["'+myLayer+'"].clip.top='+top); eval('document.layers["'+myLayer+'"].clip.right='+right); eval('document.layers["'+myLayer+'"].clip.bottom='+bottom); eval('document.layers["'+myLayer+'"].clip.left='+left); } else if(browser=="IE4") document.all[myLayer].style.clip='rect('+top+' '+right+' '+bottom+' '+left+')'; else if(browser=="DOM2") { document.getElementById(myLayer).style.clip='rect('+top+' '+right+' '+bottom+' '+left+')'; } } // show a layer function showLayer(myLayer) { if(browser=="DOM2") eval(layerRef+'("'+myLayer+'")'+styleSwitch+'.visibility="visible"'); else eval(layerRef+'["'+myLayer+'"]'+styleSwitch+'.visibility="visible"'); } // hide a layer function hideLayer(myLayer) { if(browser=="DOM2") eval(layerRef+'("'+myLayer+'")'+styleSwitch+'.visibility="hidden"'); else eval(layerRef+'["'+myLayer+'"]'+styleSwitch+'.visibility="hidden"'); } // set page top of layer function setTopLayer(myLayer,where) { if(browser=="DOM2") eval(layerRef+'("'+myLayer+'")'+styleSwitch+'.top='+where); else eval(layerRef+'["'+myLayer+'"]'+styleSwitch+'.top='+where); } // get page top of layer function getTopLayer(myLayer) { if(browser=="NS4") return(eval(layerRef+'["'+myLayer+'"].pageY')); if(browser=="IE4") return(eval(layerRef+'["'+myLayer+'"].offsetTop')); if(browser=="DOM2") return(eval(layerRef+'("'+myLayer+'").offsetTop')); } // get height of a layer function getHeightLayer(myLayer) { if(browser=="NS4") { if(dh = eval(layerRef+'["'+myLayer+'"].document.height')) return(dh); else { clipbottom = eval(layerRef+'["'+myLayer+'"].clip.bottom') cliptop = eval(layerRef+'["'+myLayer+'"].clip.top') return(clipbottom - cliptop); } } if(browser=="IE4") { if(dh = eval(layerRef+'["'+myLayer+'"]'+styleSwitch+'.pixelHeight')) return(dh); else return(eval(layerRef+'["'+myLayer+'"].clientHeight')); } if(browser=="DOM2") return(eval(layerRef+'("'+myLayer+'").offsetHeight')); } function scrollDn(myLayer) { if(scrolling) { var count = getTopLayer(myLayer); if(count < 0) { if(count < (0 - jump)) { count += jump; } else { count = 0; } setTopLayer(myLayer, count); } else { scrolling = 0; } setTimeout('scrollDn("'+myLayer+'")', miliwait); } } function scrollUp(myLayer) { if(scrolling) { var count = getTopLayer(myLayer); if(count > -400) { count -= jump; setTopLayer(myLayer, count); scrolling = 1; } else { scrolling = 0; } setTimeout('scrollUp("'+myLayer+'")', miliwait); } } function scrollDown(myLayer) { scrolling = 1; scrollDn(myLayer); } function scrollBack(myLayer) { scrolling = 1; scrollUp(myLayer); } function scroll(myLayer) { var count = getTopLayer(myLayer); if(count <= -400) { scrollDown(myLayer); } if(count >= 0) { scrollBack(myLayer); } } // init function function sliderStartup() { // find out what browser they're using and set global vars browser_detect(); // show the slider showLayer('slider'); scrollDown('slider'); //setTimeout("scrollBack('slider')", 8000); } function sliderClose() { scrollBack('slider'); }