JS圖片無縫、平滑滾動代碼,多用於推廣頁面
<!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> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>圖片滾動</title> </head> <body> <!--js替代marquee實現圖片無縫滾動可能大家都碰到過,當marquee中滾動的是圖片的時候,滾到終點的時候直接就跳回到起點了,而不像文字那樣可以無縫滾動,下面介紹的是通過js來實現圖片的無縫滾動。先瞭解一下下面這幾個屬性:innerHTML: 設定或擷取位於對象起始和結束標籤內的 HTMLscrollHeight: 擷取對象的滾動高度。scrollLeft: 設定或擷取位於對象左邊界和視窗中目前可見內容的最左端之間的距離scrollTop: 設定或擷取位於對象最頂端和視窗中可見內容的最頂端之間的距離scrollWidth: 擷取對象的滾動寬度offsetHeight: 擷取對象相對於版面或由父座標 offsetParent 屬性指定的父座標的高度offsetLeft: 擷取對象相對於版面或由 offsetParent 屬性指定的父座標的計算左側位置offsetTop: 擷取對象相對於版面或由 offsetTop 屬性指定的父座標的計算頂端位置offsetWidth: 擷取對象相對於版面或由父座標 offsetParent 屬性指定的父座標的寬度--><style type="text/css"> <!-- #demo { background: #FFF; overflow:hidden; border: 1px dashed #CCC; width: 500px; } #demo img { border: 3px solid #F2F2F2; } #indemo { float: left; width: 800%; } #demo1 { float: left; } #demo2 { float: left; } --> </style> <div id="demo"> <div id="indemo"> <div id="demo1"> <a href="#"><img src=http://www.bkjia.com/uploads/allimg/151210/04260343J-0.gif" border="0" /></a><a href="#"><img src=http://www.bkjia.com/uploads/allimg/151210/04260343J-0.gif" border="0" /></a><a href="#"><img src=http://www.bkjia.com/uploads/allimg/151210/04260343J-0.gif" border="0" /></a><a href="#"><img src=http://www.bkjia.com/uploads/allimg/151210/04260343J-0.gif" border="0" /></a><a href="#"><img src=http://www.bkjia.com/uploads/allimg/151210/04260343J-0.gif" border="0" /></a><a href="#"><img src=http://www.bkjia.com/uploads/allimg/151210/04260343J-0.gif" border="0" /></a></div> <div id="demo2"></div> </div> </div> <script> <!-- var speed=10; var tab=document.getElementById("demo"); var tab1=document.getElementById("demo1"); var tab2=document.getElementById("demo2"); tab2.innerHTML=tab1.innerHTML; function Marquee(){ if(tab2.offsetWidth-tab.scrollLeft<=0) tab.scrollLeft-=tab1.offsetWidth else{ tab.scrollLeft++; } } var MyMar=setInterval(Marquee,speed); tab. {clearInterval(MyMar)}; tab. {MyMar=setInterval(Marquee,speed)}; --> </script> </body> </html>