function marquee() {this.id=document.getelementbyid(arguments[0]);if(!this.id) {alert("您要设置的\""+arguments[0]+"\"初始化错误\r\n请检查标签id设置是否正确!");this.id=-1;return;} this.direction=this.width=this.height=this.delaytime=this.waittime=this.ctl=this.startid=this.stop=this.mouseover=0;this.step=1;this.timer=30;this.directionarray={"top":0,"up":0,"bottom":1,"down":1,"left":2,"right":3};if(typeof arguments[1]=="number"||typeof arguments[1]=="string")this.direction=arguments[1];if(typeof arguments[2]=="number")this.step=arguments[2];if(typeof arguments[3]=="number")this.width=arguments[3];if(typeof arguments[4]=="number")this.height=arguments[4];if(typeof arguments[5]=="number")this.timer=arguments[5];if(typeof arguments[6]=="number")this.delaytime=arguments[6];if(typeof arguments[7]=="number")this.waittime=arguments[7];if(typeof arguments[8]=="number")this.scrollstep=arguments[8];this.id.style.overflow=this.id.style.overflowx=this.id.style.overflowy="hidden";this.id.nowrap=true;this.isnotopera=(navigator.useragent.tolowercase().indexof("opera")==-1);if(arguments.length>=7)this.start();} marquee.prototype.start=function() {if(this.id==-1)return;if(this.waittime<800)this.waittime=800;if(this.timer<20)this.timer=20;if(this.width==0)this.width=parseint(this.id.style.width);if(this.height==0)this.height=parseint(this.id.style.height);if(typeof this.direction=="string")this.direction=this.directionarray[this.direction.tostring().tolowercase()];this.halfwidth=math.round(this.width/2);this.halfheight=math.round(this.height/2);this.bakstep=this.step;this.id.style.width=this.width+"px";this.id.style.height=this.height+"px";if(typeof this.scrollstep!="number")this.scrollstep=this.direction>1?this.width:this.height;var templateleft="
msclass_temp_htmlmsclass_temp_html
";var templatetop="
msclass_temp_html
msclass_temp_html
";var msobj=this;msobj.temphtml=msobj.id.innerhtml;if(msobj.direction<=1) {msobj.id.innerhtml=templatetop.replace(/msclass_temp_html/g,msobj.id.innerhtml);} else {if(msobj.scrollstep==0&&msobj.delaytime==0) {msobj.id.innerhtml+=msobj.id.innerhtml;} else {msobj.id.innerhtml=templateleft.replace(/msclass_temp_html/g,msobj.id.innerhtml);}} var timer=this.timer;var delaytime=this.delaytime;var waittime=this.waittime;msobj.startid=function(){msobj.scroll()} msobj.continue=function() {if(msobj.mouseover==1) {settimeout(msobj.continue,delaytime);} else {clearinterval(msobj.timerid);msobj.ctl=msobj.stop=0;msobj.timerid=setinterval(msobj.startid,timer);}} msobj.pause=function() {msobj.stop=1;clearinterval(msobj.timerid);settimeout(msobj.continue,delaytime);} msobj.begin=function() {msobj.clientscroll=msobj.direction>1?msobj.id.scrollwidth/2:msobj.id.scrollheight/2;if((msobj.direction<=1&&msobj.clientscroll<=msobj.height+msobj.step)||(msobj.direction>1&&msobj.clientscroll<=msobj.width+msobj.step)){msobj.id.innerhtml=msobj.temphtml;delete(msobj.temphtml);return;} delete(msobj.temphtml);msobj.timerid=setinterval(msobj.startid,timer);if(msobj.scrollstep<0)return;msobj.id.onmousemove=function(event) {if(msobj.scrollstep==0&&msobj.direction>1) {var event=event||window.event;if(window.event) {if(msobj.isnotopera) {msobj.eventleft=event.srcelement.id==msobj.id.id?event.offsetx-msobj.id.scrollleft:event.srcelement.offsetleft-msobj.id.scrollleft+event.offsetx;} else {msobj.scrollstep=null;return;}} else {msobj.eventleft=event.layerx-msobj.id.scrollleft;} msobj.direction=msobj.eventleft>msobj.halfwidth?3:2;msobj.abscenter=math.abs(msobj.halfwidth-msobj.eventleft);msobj.step=math.round(msobj.abscenter*(msobj.bakstep*2)/msobj.halfwidth);}} msobj.id.onmouseover=function() {if(msobj.scrollstep==0)return;msobj.mouseover=1;clearinterval(msobj.timerid);} msobj.id.onmouseout=function() {if(msobj.scrollstep==0) {if(msobj.step==0)msobj.step=1;return;} msobj.mouseover=0;if(msobj.stop==0) {clearinterval(msobj.timerid);msobj.timerid=setinterval(msobj.startid,timer);}}} settimeout(msobj.begin,waittime);} marquee.prototype.scroll=function() {switch(this.direction) {case 0:this.ctl+=this.step;if(this.ctl>=this.scrollstep&&this.delaytime>0) {this.id.scrolltop+=this.scrollstep+this.step-this.ctl;this.pause();return;} else {if(this.id.scrolltop>=this.clientscroll) {this.id.scrolltop-=this.clientscroll;} this.id.scrolltop+=this.step;} break;case 1:this.ctl+=this.step;if(this.ctl>=this.scrollstep&&this.delaytime>0) {this.id.scrolltop-=this.scrollstep+this.step-this.ctl;this.pause();return;} else {if(this.id.scrolltop<=0) {this.id.scrolltop+=this.clientscroll;} this.id.scrolltop-=this.step;} break;case 2:this.ctl+=this.step;if(this.ctl>=this.scrollstep&&this.delaytime>0) {this.id.scrollleft+=this.scrollstep+this.step-this.ctl;this.pause();return;} else {if(this.id.scrollleft>=this.clientscroll) {this.id.scrollleft-=this.clientscroll;} this.id.scrollleft+=this.step;} break;case 3:this.ctl+=this.step;if(this.ctl>=this.scrollstep&&this.delaytime>0) {this.id.scrollleft-=this.scrollstep+this.step-this.ctl;this.pause();return;} else {if(this.id.scrollleft<=0) {this.id.scrollleft+=this.clientscroll;} this.id.scrollleft-=this.step;} break;}}