function createAjaxObj(){ var httprequest=false if (window.XMLHttpRequest){ // if Mozilla, Safari etc httprequest=new XMLHttpRequest() if (httprequest.overrideMimeType) httprequest.overrideMimeType('text/xml') } else if (window.ActiveXObject){ // if IE try { httprequest=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e){ try{ httprequest=new ActiveXObject("Microsoft.XMLHTTP"); } catch (e){} } } return httprequest } function ajax_ticker(xmlfile, divId, divClass, delay, fadeornot){ this.xmlfile=xmlfile //Variable pointing to the local ticker xml file (txt) this.tickerid=divId //ID of ticker div to display information this.delay=delay //Delay between msg change, in miliseconds. this.mouseoverBol=0 //Boolean to indicate whether mouse is currently over ticker (and pause it if it is) this.pointer=0 this.opacitystring=(typeof fadeornot!="undefined")? "width: 100%; filter:progid:DXImageTransform.Microsoft.alpha(opacity=100); -moz-opacity: 1" : "" if (this.opacitystring!="") this.delay+=500 //add 1/2 sec to account for fade effect, if enabled this.opacitysetting=0.2 //Opacity value when reset. Internal use. this.messages=[] //Arrays to hold each message of ticker this.ajaxobj=createAjaxObj() document.write('
Initializing ticker...
') this.getXMLfile() } ajax_ticker.prototype.getXMLfile=function(){ if (this.ajaxobj){ var instanceOfTicker=this var url=this.xmlfile+"?bustcache="+new Date().getTime() this.ajaxobj.onreadystatechange=function(){instanceOfTicker.initialize()} this.ajaxobj.open('GET', url, true) this.ajaxobj.send(null) } } ajax_ticker.prototype.initialize=function(){ if (this.ajaxobj.readyState == 4){ //if request of file completed if (this.ajaxobj.status==200 || window.location.href.indexOf("http")==-1){ //if request was successful this.contentdiv=document.getElementById(this.tickerid).firstChild //div of inner content that holds the messages var xmldata=this.ajaxobj.responseText this.contentdiv.style.display="none" this.contentdiv.innerHTML=xmldata if (this.contentdiv.getElementsByTagName("div").length==0){ //if no messages were found this.contentdiv.innerHTML="Error fetching remote ticker file!" return } var instanceOfTicker=this document.getElementById(this.tickerid).onmouseover=function(){instanceOfTicker.mouseoverBol=1} document.getElementById(this.tickerid).onmouseout=function(){instanceOfTicker.mouseoverBol=0} if (window.attachEvent) //Clean up loose references in IE window.attachEvent("onunload", function(){instanceOfTicker.contentdiv=instanceOfTicker.ajaxobj=null}) //Cycle through XML object and store each message inside array for (var i=0; i=1) clearInterval(this[timerid]) }