JS實用的帶停頓的逐行文本循環(huán)滾動效果實例
更新時間:2016年11月23日 09:14:57 投稿:jingxian
下面小編就為大家?guī)硪黄狫S實用的帶停頓的逐行文本循環(huán)滾動效果實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
如下所示:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>JS實用的帶停頓的逐行文本循環(huán)滾動效果</title> <meta http-equiv="content-type" content="text/html;charset=gb2312"> <style type="text/css"> #scrollBox2{font-size:12px;width:260px;color:#646464;line-height:22px;height:66px;overflow:hidden;text-align:left;} </style> </head> <body> <div id="scrollBox2" style="text-align:left;"> 歡迎光臨 實用的逐行文本滾動效果<br> 滾動一行至另一行時有所停頓<br> 希望大家喜歡,感覺挺簡潔的代碼<br> </div> <script> window.onload=function(){ new Marquee( "scrollBox2", //容器ID<br> 0, //向上滾動(0向上 1向下 2向左 3向右)<br> 2, //滾動的步長<br> 200, //容器可視寬度<br> 64, //容器可視高度<br> 50, //定時器 數(shù)值越小,滾動的速度越快(1000=1秒,建議不小于20)<br> 2000, //間歇停頓時間(0為不停頓,1000=1秒)<br> 1000, //開始時的等待時間(0為不等待,1000=1秒)<br> //間歇滾動間距(可選)<br> ); }; function Marquee(){ this.ID=document.getElementById(arguments[0]); this.Direction=arguments[1]; this.Step=arguments[2]; this.Width=arguments[3]; this.Height=arguments[4]; this.Timer=arguments[5]; this.WaitTime=arguments[6]; this.StopTime=arguments[7]; if(arguments[8]){this.ScrollStep=arguments[8];}else{this.ScrollStep=this.Direction>1?this.Width:this.Height;} this.CTL=this.StartID=this.Stop=this.MouseOver=0; this.ID.style.overflowX=this.ID.style.overflowY="hidden"; this.ID.noWrap=true; this.ID.style.width=this.Width; this.ID.style.height=this.Height; this.ClientScroll=this.Direction>1?this.ID.scrollWidth:this.ID.scrollHeight; this.ID.innerHTML+=this.ID.innerHTML; this.Start(this,this.Timer,this.WaitTime,this.StopTime); } Marquee.prototype.Start=function(msobj,timer,waittime,stoptime){ msobj.StartID=function(){msobj.Scroll();} msobj.Continue=function(){ if(msobj.MouseOver==1){setTimeout(msobj.Continue,waittime);} 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,waittime);} msobj.Begin=function(){ msobj.TimerID=setInterval(msobj.StartID,timer); msobj.ID.onmouseover=function(){msobj.MouseOver=1; clearInterval(msobj.TimerID);} msobj.ID.onmouseout=function(){msobj.MouseOver=0; if(msobj.Stop==0){clearInterval(msobj.TimerID); msobj.TimerID=setInterval(msobj.StartID,timer);}} } setTimeout(msobj.Begin,stoptime); } Marquee.prototype.Scroll=function(){ switch(this.Direction){ case 0: this.CTL+=this.Step; if(this.CTL>=this.ScrollStep&&this.WaitTime>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.WaitTime>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.WaitTime>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.WaitTime>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; } } </script> </body> </html> <br><br><hr>
以上這篇JS實用的帶停頓的逐行文本循環(huán)滾動效果實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
DB.ASP 用Javascript寫ASP很靈活很好用很easy
DB.ASP 用Javascript寫ASP很靈活很好用很easy,喜歡用js寫asp的朋友可以參考下。2011-07-07javascript四舍五入函數(shù)代碼分享(保留后幾位)
這篇文章主要介紹了javascript四舍五入函數(shù)分享,大家參考使用吧2013-12-12JavaScript代碼簡單實現(xiàn)求楊輝三角給定行的最大值
求楊輝三角給定行的最大值的的方法或許有很多,下面使用js代碼簡單實現(xiàn)下,感興趣的朋友可以參考下2013-10-10json前后端數(shù)據(jù)交互相關(guān)代碼
本篇文章給大家分享了關(guān)于json前后端數(shù)據(jù)交互方法實現(xiàn)的相關(guān)知識點內(nèi)容,有興趣的讀者們可以參考學(xué)習(xí)下。2018-09-09