三组文字间隙滚动代码【支持三行或多行一换】
css
1 *{font-size:12px;}
2 #scrollBox2{width:150px; height:64px; line-height:22px; overflow:hidden; background-color:#eee;}
html
国家 汇率名称 今日汇率 < div id="scrollBox2"> 美元USD ŀ.775%< br /> 港币HKD ŀ.75%< br /> 英镑GBP ŀ.50%< br /> 欧元EUR ŀ.25%< br /> 日元JPY ŀ.01%< br /> </ div > |
js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 | <script> window.onload= function (){ new Marquee( "scrollBox2" , //容器ID<br /> 0, //向上滚动(0向上 1向下 2向左 3向右)<br /> 2, //滚动的步长<br /> 200, //容器可视宽度<br /> 64, //容器可视高度<br /> 50, //定时器 数值越小,滚动的速度越快(1000=1秒,建议不小于20)<br /> 2000, //间歇停顿时间(0为不停顿,1000=1秒)<br /> 1000, //开始时的等待时间(0为不等待,1000=1秒)<br /> 22 //间歇滚动间距(可选)<br /> //如果需要三行或者N行一换,乘以N的倍数,如3行,则填写66 ); }; 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> |
作者:【唐】三三
出处:https://www.cnblogs.com/tangge/archive/2011/04/29/2032536.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具