单个滚动区的网上已经有很多的例子,今天这个适用于多个独立的滚动区
//滚动类 function Marquee(){ this.ID = document.getElementById(arguments[0]); if (!this.ID) return false; 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> //调用 window.onload = function(){ new Marquee( "cargo", //容器ID<br /> 0, //向上滚动(0向上 1向下 2向左 3向右)<br /> 7, //滚动的步长<br /> 568, //容器可视宽度<br /> 189, //容器可视高度<br /> 40, //定时器 数值越小,滚动的速度越快(1000=1秒,建议不小于20)<br /> 4000, //间歇停顿时间(0为不停顿,1000=1秒)<br /> 3000, //开始时的等待时间(0为不等待,1000=1秒)<br /> 189 //间歇滚动间距(可选)<br /> ); new Marquee( "vehicle", //容器ID<br /> 0, //向上滚动(0向上 1向下 2向左 3向右)<br /> 7, //滚动的步长<br /> 568, //容器可视宽度<br /> 189, //容器可视高度<br /> 40, //定时器 数值越小,滚动的速度越快(1000=1秒,建议不小于20)<br /> 5000, //间歇停顿时间(0为不停顿,1000=1秒)<br /> 4000, //开始时的等待时间(0为不等待,1000=1秒)<br /> 189 //间歇滚动间距(可选)<br /> ); } </script> <style> .vcInfo { width: 566px; height: 180px; min-height: 25px; line-height: 25px; border: #CCC 0px solid; overflow: hidden; } </style> <div class="m_infos"> <dl class="dl bgc_e9"> <dt class="w280 pl10">出发地 → 到达地</dt> <dt class="w80">配货方式</dt> <dt class="w65">类型</dt> <dt class="w60">时间</dt> <dt class="w66">查看</dt> </dl> <ul id='cargo' class="vcInfo"> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/cargo/201110/43719.html" target="_blank"> 青海省 海西自治州 市辖区 → 台湾 </a> </dt> <dt class="w80">不限</dt> <dt class="w65">设备</dt> <dt class="w60">10-19</dt> <dt class="w66"> <a href="/dedecms/a/cargo/201110/43719.html" target="_blank">查看详细</a> </dt> </dl> </li> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/cargo/201110/43619.html" target="_blank"> 重庆市 市辖区 → 湖南省 郴州市 市辖区 </a> </dt> <dt class="w80">不限</dt> <dt class="w65">设备</dt> <dt class="w60">10-19</dt> <dt class="w66"> <a href="/dedecms/a/cargo/201110/43619.html" target="_blank">查看详细</a> </dt> </dl> </li> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/cargo/201110/43519.html" target="_blank"> 山东省 泰安市 市辖区 → 内蒙古区 通辽市 市辖区 </a> </dt> <dt class="w80">不限</dt> <dt class="w65">设备</dt> <dt class="w60">10-19</dt> <dt class="w66"> <a href="/dedecms/a/cargo/201110/43519.html" target="_blank">查看详细</a> </dt> </dl> </li> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/cargo/201110/43419.html" target="_blank"> 吉林省 延边自治州 市辖区 → 浙江省 温州市 市辖区 </a> </dt> <dt class="w80">不限</dt> <dt class="w65">设备</dt> <dt class="w60">10-19</dt> <dt class="w66"> <a href="/dedecms/a/cargo/201110/43419.html" target="_blank">查看详细</a> </dt> </dl> </li> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/cargo/201110/43319.html" target="_blank"> 重庆市 秀山县 → 广东省 汕尾市 市辖区 </a> </dt> <dt class="w80">不限</dt> <dt class="w65">设备</dt> <dt class="w60">10-19</dt> <dt class="w66"> <a href="/dedecms/a/cargo/201110/43319.html" target="_blank">查看详细</a> </dt> </dl> </li> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/cargo/201110/43219.html" target="_blank"> 广西区 北海市 市辖区 → 广东省 珠海市 市辖区 </a> </dt> <dt class="w80">不限</dt> <dt class="w65">设备</dt> <dt class="w60">10-19</dt> <dt class="w66"> <a href="/dedecms/a/cargo/201110/43219.html" target="_blank">查看详细</a> </dt> </dl> </li> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/cargo/201110/43119.html" target="_blank"> 河北省 保定市 安国市 → 广东省 深圳市 市辖区 </a> </dt> <dt class="w80">不限</dt> <dt class="w65">设备</dt> <dt class="w60">10-19</dt> <dt class="w66"> <a href="/dedecms/a/cargo/201110/43119.html" target="_blank">查看详细</a> </dt> </dl> </li> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/cargo/201110/43019.html" target="_blank"> 四川省 南充市 营山县 → 广西区 贺州市 钟山县 </a> </dt> <dt class="w80">不限</dt> <dt class="w65">设备</dt> <dt class="w60">10-19</dt> <dt class="w66"> <a href="/dedecms/a/cargo/201110/43019.html" target="_blank">查看详细</a> </dt> </dl> </li> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/cargo/201110/42919.html" target="_blank"> 四川省 遂宁市 市辖区 → 安徽省 宿州市 灵璧县 </a> </dt> <dt class="w80">不限</dt> <dt class="w65">设备</dt> <dt class="w60">10-19</dt> <dt class="w66"> <a href="/dedecms/a/cargo/201110/42919.html" target="_blank">查看详细</a> </dt> </dl> </li> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/cargo/201110/42713.html" target="_blank"> 四川省 内江市 市辖区 → 海南省 海南直辖县 西沙群岛 </a> </dt> <dt class="w80">不限</dt> <dt class="w65">设备</dt> <dt class="w60">10-13</dt> <dt class="w66"> <a href="/dedecms/a/cargo/201110/42713.html" target="_blank">查看详细</a> </dt> </dl> </li> </ul> </div> <div class="m_infos"> <dl class="dl bgc_e9"> <dt class="w280 pl10">出发地→到达地</dt> <dt class="w80">载重</dt> <dt class="w65">长度</dt> <dt class="w60">时间</dt> <dt class="w66">查看</dt> </dl> <ul id='vehicle' class="vcInfo"> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/vehicle/201110/44319.html" target="_blank"> 辽宁省 鞍山市 市辖区 → 宁夏区 中卫市 市辖区 </a> </dt> <dt class="w80">45 吨</dt> <dt class="w65">5 米</dt> <dt class="w60">10-19</dt> <dt class="w66"> <a href="/dedecms/a/vehicle/201110/44319.html" target="_blank">查看详细</a> </dt> </dl> </li> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/vehicle/201110/44219.html" target="_blank"> 山东省 泰安市 宁阳县 → 澳门 </a> </dt> <dt class="w80">45 吨</dt> <dt class="w65">5 米</dt> <dt class="w60">10-19</dt> <dt class="w66"> <a href="/dedecms/a/vehicle/201110/44219.html" target="_blank">查看详细</a> </dt> </dl> </li> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/vehicle/201110/44119.html" target="_blank"> 山东省 日照市 市辖区 → 广东省 江门市 市辖区 </a> </dt> <dt class="w80">45 吨</dt> <dt class="w65">5 米</dt> <dt class="w60">10-19</dt> <dt class="w66"> <a href="/dedecms/a/vehicle/201110/44119.html" target="_blank">查看详细</a> </dt> </dl> </li> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/vehicle/201110/44019.html" target="_blank"> 湖南省 郴州市 市辖区 → 湖北省 咸宁市 市辖区 </a> </dt> <dt class="w80">23 吨</dt> <dt class="w65">2 米</dt> <dt class="w60">10-19</dt> <dt class="w66"> <a href="/dedecms/a/vehicle/201110/44019.html" target="_blank">查看详细</a> </dt> </dl> </li> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/vehicle/201110/43919.html" target="_blank"> 内蒙古区 呼伦贝尔市 市辖区 → 浙江省 台州市 市辖区 </a> </dt> <dt class="w80">23 吨</dt> <dt class="w65">2 米</dt> <dt class="w60">10-19</dt> <dt class="w66"> <a href="/dedecms/a/vehicle/201110/43919.html" target="_blank">查看详细</a> </dt> </dl> </li> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/vehicle/201110/43819.html" target="_blank"> 青海省 玉树自治州 市辖区 → 广东省 江门市 市辖区 </a> </dt> <dt class="w80">23 吨</dt> <dt class="w65">2 米</dt> <dt class="w60">10-19</dt> <dt class="w66"> <a href="/dedecms/a/vehicle/201110/43819.html" target="_blank">查看详细</a> </dt> </dl> </li> <li> <dl class="dl"> <dt class="w280 pl10"> <a href="/dedecms/a/vehicle/201110/42813.html" target="_blank"> 广东省 茂名市 电白县 → 山东省 泰安市 宁阳县 </a> </dt> <dt class="w80">31 吨</dt> <dt class="w65">3.5 米</dt> <dt class="w60">10-13</dt> <dt class="w66"> <a href="/dedecms/a/vehicle/201110/42813.html" target="_blank">查看详细</a> </dt> </dl> </li> </ul> </div>