/*Example message arrays for the two demo scrollers*/ var pausecontent=new Array(); pausecontent[0] = "
\n"; pausecontent[0] += "
"+ "onside law advises on major Premier League deals " +"
\n"; pausecontent[0] += "
"+ "onside law have recently advised the ECB in its successful defence of appeals brought by Northamptonshire CCC and Lancashire CCC against the ECB’s rejection of governing body endorsement applications for their ongoing employment of Johann Van Der Wath, Riki Wessels and Francois Du Plessis respectively." +"
\n"; pausecontent[0] += "
"+"09/03/10"+"
Read more...
\n"; pausecontent[0] += "
\n"; pausecontent[1] = "
\n"; pausecontent[1] += "
"+ "onside law advises Sven-Göran Eriksson on departure from Notts County" +"
\n"; pausecontent[1] += "
"+ "onside law advises Sven-Göran Eriksson on all aspects of his departure from Notts County Football Club." +"
\n"; pausecontent[1] += "
"+"17/02/10"+"
Read more...
\n"; pausecontent[1] += "
\n"; pausecontent[2] = "
\n"; pausecontent[2] += "
"+ "onside law at the Winter Olympics" +"
\n"; pausecontent[2] += "
"+ "onside law advised Paddy Power on its deal to become the Snow Leopard, Kwame Nkrumah-Acheampong’s Principal Sponsor. " +"
\n"; pausecontent[2] += "
"+"16/02/10"+"
Read more...
\n"; pausecontent[2] += "
\n"; function pausescroller(content, divId, divClass, delay){ //message array content this.content=content; //ID of ticker div to display information this.tickerid=divId; //Delay between msg change, in miliseconds. this.delay=delay; //Boolean to indicate whether mouse is currently over scroller (and pause it if it is) this.mouseoverBol=0; //index of message array for hidden div this.hiddendivpointer=1; document.write('
'+content[0]+'
'); var scrollerinstance=this; //run onload in DOM2 browsers if (window.addEventListener) { window.addEventListener("load", function(){scrollerinstance.initialize()}, false); }else if (window.attachEvent){ //run onload in IE5.5+ window.attachEvent("onload", function(){scrollerinstance.initialize()}); }else if (document.getElementById){ //if legacy DOM browsers, just start scroller after 0.5 sec setTimeout(function(){scrollerinstance.initialize()}, 500); } } // ------------------------------------------------------------------- // initialize()- Initialize scroller method. // -Get div objects, set initial positions, start up down animation // ------------------------------------------------------------------- pausescroller.prototype.initialize=function(){ this.tickerdiv=document.getElementById(this.tickerid); this.visiblediv=document.getElementById(this.tickerid+"1"); this.hiddendiv=document.getElementById(this.tickerid+"2"); this.visibledivtop=parseInt(pausescroller.getCSSpadding(this.tickerdiv)); //set width of inner DIVs to outer DIV's width minus padding (padding assumed to be top padding x 2) this.visiblediv.style.width=this.hiddendiv.style.width=this.tickerdiv.offsetWidth-(this.visibledivtop*2)+"px"; this.getinline(this.visiblediv, this.hiddendiv); this.hiddendiv.style.visibility="visible"; var scrollerinstance=this; document.getElementById(this.tickerid).onmouseover=function(){ scrollerinstance.mouseoverBol=1; } document.getElementById(this.tickerid).onmouseout=function(){ scrollerinstance.mouseoverBol=0; } //Clean up loose references in IE if (window.attachEvent) { window.attachEvent("onunload", function(){scrollerinstance.tickerdiv.onmouseover=scrollerinstance.tickerdiv.onmouseout=null}); } setTimeout(function(){scrollerinstance.animateup()}, this.delay); } // ------------------------------------------------------------------- // animateup()- Move the two inner divs of the scroller up and in sync // ------------------------------------------------------------------- pausescroller.prototype.animateup=function(){ var scrollerinstance=this; if (parseInt(this.hiddendiv.style.top)>(this.visibledivtop+5)){ this.visiblediv.style.top=parseInt(this.visiblediv.style.top)-5+"px"; this.hiddendiv.style.top=parseInt(this.hiddendiv.style.top)-5+"px"; setTimeout(function(){scrollerinstance.animateup()}, 50); }else{ this.getinline(this.hiddendiv, this.visiblediv); this.swapdivs(); setTimeout(function(){scrollerinstance.setmessage()}, this.delay); } } // ------------------------------------------------------------------- // swapdivs()- Swap between which is the visible and which is the hidden div // ------------------------------------------------------------------- pausescroller.prototype.swapdivs=function(){ var tempcontainer=this.visiblediv; this.visiblediv=this.hiddendiv; this.hiddendiv=tempcontainer; } pausescroller.prototype.getinline=function(div1, div2){ div1.style.top=this.visibledivtop+"px"; div2.style.top=Math.max(div1.parentNode.offsetHeight, div1.offsetHeight)+"px"; } // ------------------------------------------------------------------- // setmessage()- Populate the hidden div with the next message before it's visible // ------------------------------------------------------------------- pausescroller.prototype.setmessage=function(){ var scrollerinstance=this; if (this.mouseoverBol==1){ //if mouse is currently over scoller, do nothing (pause it) setTimeout(function(){scrollerinstance.setmessage()}, 100); }else{ var i=this.hiddendivpointer; var ceiling=this.content.length; this.hiddendivpointer=(i+1>ceiling-1)? 0 : i+1 ; this.hiddendiv.innerHTML=this.content[this.hiddendivpointer] ; this.animateup(); } } pausescroller.getCSSpadding=function(tickerobj){ //get CSS padding value, if any if (tickerobj.currentStyle){ return tickerobj.currentStyle["paddingTop"]; }else if (window.getComputedStyle){ //if DOM2 return window.getComputedStyle(tickerobj, "").getPropertyValue("padding-top"); }else{ return 0; } }