亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

JS圖片左右無縫隙滾動的實現(兼容IE,Firefox 遵循W3C標準)

2019-11-20 08:54:21
字體:
來源:轉載
供稿:網友

**兼容IE,Firefox 遵循W3C標準寫法的圖片無縫滾動代碼(支持左移/右移功能)(本示例為上下兩行圖片進行雙行滾動)

**實現思路:一個設定寬度并且隱藏超出它寬度的內容的容器demo,里面放demo1和demo2,demo1是滾動內容,demo2為demo1的直接克隆,

**通過不斷改變demo1的scrollTop或者scrollLeft達到滾動的目的,當滾動至demo1與demo2的交界處時直接跳回初始位置,

**因為demo1與demo2一樣,所以分不出跳動的瞬間,從而達到“無縫”滾動的目的。

Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><!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 id="Head1" runat="server"> <title></title></head><body> <img src="link.gif" style="cursor: pointer" onmouseover="clearright();toleft()" /> <img src="link1.gif" style="cursor: pointer" onmouseover="clearleft();toright()" /> <div>  <div id="demo" style="overflow: hidden; width: 322px; height: 61px">   <table cellpadding="0" align="left" border="0" cellspace="0">    <tbody>     <tr>      <td id="demo1" valign="top">       <table cellspacing="0" cellpadding="0" width="322" bgcolor="#fffbf7" border="0">        <tbody>         <tr align="center">          <td width="50" height="50">           <img height="50" src="link.gif" />          </td>          <td width="50" height="50">           <img height="50" src="link1.gif" />          </td>          <td width="50" height="50">           <img height="50" src="link2.gif" />          </td>          <td width="50" height="50">           <img height="50" src="link.gif" />          </td>          <td width="50" height="50">           <img height="50" src="link3.gif" />          </td>         </tr>        </tbody>       </table>      </td>      <td id="demo2" valign="top">      </td>     </tr>    </tbody>   </table>  </div> </div> <div>  <div id="demo_a" style="overflow: hidden; width: 322px; height: 61px">   <table cellpadding="0" align="left" border="0" cellspace="0">    <tbody>     <tr>      <td id="demo_b" valign="top">       <table cellspacing="0" cellpadding="0" width="322" bgcolor="#fffbf7" border="0">        <tbody>         <tr align="center">          <td width="50" height="50">           <img height="50" src="link.gif" />          </td>          <td width="50" height="50">           <img height="50" src="link1.gif" />          </td>          <td width="50" height="50">           <img height="50" src="link2.gif" />          </td>          <td width="50" height="50">           <img height="50" src="link.gif" />          </td>          <td width="50" height="50">           <img height="50" src="link3.gif" />          </td>         </tr>        </tbody>       </table>      </td>      <td id="demo_c" valign="top">      </td>     </tr>    </tbody>   </table>  </div> </div> <script type="text/javascript"> /* **兼容IE,Firefox 遵循W3C標準寫法的圖片無縫滾動代碼(支持左移/右移功能)(本示例為上下兩行圖片進行雙行滾動) ** **實現思路:一個設定寬度并且隱藏超出它寬度的內容的容器demo,里面放demo1和demo2,demo1是滾動內容,demo2為demo1的直接克隆, **通過不斷改變demo1的scrollTop或者scrollLeft達到滾動的目的,當滾動至demo1與demo2的交界處時直接跳回初始位置, **因為demo1與demo2一樣,所以分不出跳動的瞬間,從而達到“無縫”滾動的目的。 */ var speed1=0  //圖片左移的速度 var MyMar1  //setInterverval方法返回的間隔ID,些ID為全局的調用次數(用于第一行圖片) var MyMar2  //setInterverval方法返回的間隔ID,些ID為全局的調用次數(用于第二行圖片) var lefthit=0    //記錄左移按鈕點擊次數 var righthit=0  ////記錄右移按鈕點擊次數  //調用右移方法前,先讓左移停止(clearInterval清除setInterval對方法的調用) function clearleft(){   clearInterval(MyMar1)   clearInterval(MyMar2) } //圖片左移的方法 function toleft(){    //判斷是否是第一次按下左移按鈕(圖片往左開始移動的時候,不會在調用此方法。只有當按了右移按鈕時,才會把lefthit重設為0)   if(lefthit==0){     speed1=30;//圖片左移速度時間毫秒     //讓的內容demo2與demo1內容一樣     document.getElementById("demo2").innerHTML=document.getElementById("demo1").innerHTML     //上行圖片移動的方法     function Marquee1(){        //當demo滾動至demo2的交界處。與就是與demo2重合時。offsetWidth與scrollLeft剛好相等       if(document.getElementById("demo2").offsetWidth-document.getElementById("demo").scrollLeft<=0){         //demo跳回初始位置         document.getElementById("demo").scrollLeft-=document.getElementById("demo1").offsetWidth       }       else{         //demo開始重新移動         document.getElementById("demo").scrollLeft++       }     }     //setInterval讓Marquee1方法每隔多少秒執行一次,并把返回的調用次數ID     MyMar1=setInterval(Marquee1,speed1)     //當鼠標移動demo上面時。調用clearInterval清除MyMar1.這樣圖片便不會在移動了。移到圖片時,第一行和第二行的圖片都會停止     document.getElementById("demo").onmouseover=function()     {clearInterval(MyMar1);clearInterval(MyMar2)}     //當鼠標移除demo時,重新setInterval讓方法執行,這樣圖片會繼續移動     document.getElementById("demo").onmouseout=function()     {MyMar1=setInterval(Marquee1,speed1);clearInterval(MyMar2);MyMar2=setInterval(Marquee2,speed1)}      //下面的方法與上面的方法一樣,用于第二行的圖片向左移動      document.getElementById("demo_c").innerHTML=document.getElementById("demo_b").innerHTML     function Marquee2(){       if(document.getElementById("demo_c").offsetWidth-document.getElementById("demo_a").scrollLeft<=0){         document.getElementById("demo_a").scrollLeft-=document.getElementById("demo_b").offsetWidth}       else{         document.getElementById("demo_a").scrollLeft++       }     }     MyMar2=setInterval(Marquee2,speed1)     document.getElementById("demo_a").onmouseover=function()     {clearInterval(MyMar2);clearInterval(MyMar1)}     document.getElementById("demo_a").onmouseout=function()     {MyMar2=setInterval(Marquee2,speed1); document.getElementById("demo").onmouseout()}     lefthit=1    //設置左移按鈕,當按了一次左移后(不管按多少次),在沒按右移按鈕之前,toleft方法里的的代碼不會再被執行     righthit=0  //把右移按鈕設為0,這樣當下次點了右移按鈕的時候,以便toright方法被調用   } }   var MyMar3  //setInterverval方法返回的間隔ID,些ID為全局的調用次數(用于第一行圖片) var MyMar4  //setInterverval方法返回的間隔ID,些ID為全局的調用次數(用于第二行圖片) var speed2=0  //圖片右移的速度 //調用移左方法前,先讓右移停止(clearInterval清除setInterval對方法的調用) function clearright(){   clearInterval(MyMar3)   clearInterval(MyMar4) }   //圖片右移方法(與圖片左移方法思路一樣) function toright(){     //判斷是否是第一次按下右移按鈕(圖片往右開始移動的時候,不會在調用此方法。只有當按了左移按鈕時,才會把righthit重設為0)   if(righthit==0){     speed2=30;     document.getElementById("demo2").innerHTML=document.getElementById("demo1").innerHTML     function Marquee_a(){       if(document.getElementById("demo").scrollLeft<=0){         document.getElementById("demo").scrollLeft=document.getElementById("demo2").offsetWidth       }       else{         document.getElementById("demo").scrollLeft--       }     }     MyMar3=setInterval(Marquee_a,speed2)     document.getElementById("demo").onmouseover=function()     {clearInterval(MyMar3);document.getElementById("demo_a").onmouseover()}     document.getElementById("demo").onmouseout=function()     {MyMar3=setInterval(Marquee_a,speed2);clearInterval(MyMar4);MyMar4=setInterval(Marquee_b,speed2)}              document.getElementById("demo_c").innerHTML=document.getElementById("demo_b").innerHTML     function Marquee_b(){       if(document.getElementById("demo_a").scrollLeft<=0){         document.getElementById("demo_a").scrollLeft=document.getElementById("demo_c").offsetWidth       }       else{         document.getElementById("demo_a").scrollLeft--       }     }     MyMar4=setInterval(Marquee_b,speed2)     document.getElementById("demo_a").onmouseover=function()     {clearInterval(MyMar4);clearInterval(MyMar3)}     document.getElementById("demo_a").onmouseout=function()     {MyMar4=setInterval(Marquee_b,speed2);document.getElementById("demo").onmouseout()}     righthit=1  //設置右移按鈕,當按了一次右移按鈕后(不管按多少次),在沒按左移按鈕之前,toright方法里的的代碼不會再被執行     lefthit=0  //把左移按鈕設為0,這樣當下次點了左移按鈕的時候,以便toleft方法被調用   } } </script></body></html>

以上就是小編為大家帶來的JS圖片左右無縫隙滾動的實現(兼容IE,Firefox 遵循W3C標準)的全部內容了,希望對大家有所幫助,多多支持武林網~

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美成人亚洲成人日韩成人| 国产偷亚洲偷欧美偷精品| 日韩成人av在线| 国产精品久久久久不卡| 欧美大人香蕉在线| 91沈先生在线观看| 国产成人精品在线观看| 亚洲第一av在线| 深夜福利日韩在线看| 91网站免费看| 国产精品午夜一区二区欲梦| 国产一区二中文字幕在线看| 亚洲综合在线小说| 成人国产在线视频| 日韩免费高清在线观看| 欧美日韩国产黄| 国产视频精品免费播放| 亚洲人高潮女人毛茸茸| 国产欧美亚洲精品| 色妞一区二区三区| 精品成人乱色一区二区| 欧美一级在线播放| 久久香蕉国产线看观看av| 成人精品在线观看| 日韩免费观看在线观看| 中文字幕国内精品| 亚洲一区二区三区久久| 亚洲欧美日韩高清| 国产精品久久久久久久久久小说| 夜夜嗨av色一区二区不卡| 狠狠色狠狠色综合日日小说| 91社影院在线观看| 国产午夜一区二区| 欧美香蕉大胸在线视频观看| 国产欧美一区二区白浆黑人| 蜜臀久久99精品久久久久久宅男| 日韩欧美极品在线观看| 成人黄在线观看| 韩国视频理论视频久久| 91精品国产91久久久久久久久| 国产亚洲精品成人av久久ww| 亚洲社区在线观看| 精品国产区一区二区三区在线观看| 亚洲视频axxx| 91亚洲人电影| 亚洲综合第一页| 日韩美女免费线视频| 色爱av美腿丝袜综合粉嫩av| 色中色综合影院手机版在线观看| 一本久久综合亚洲鲁鲁| 精品视频久久久久久久| 国产成人一区二区三区电影| 亚洲美女av在线| 日韩视频―中文字幕| 国产欧美精品va在线观看| 日韩美女免费视频| 亚洲深夜福利网站| 欧美二区在线播放| 亚洲久久久久久久久久| 亚洲国产女人aaa毛片在线| 国产成人在线精品| 亚洲国产三级网| 欧美激情伊人电影| 3344国产精品免费看| 日韩欧美大尺度| 国产97人人超碰caoprom| 亚洲天堂成人在线视频| 中文字幕日韩在线播放| 国产69久久精品成人看| 国产午夜精品全部视频播放| 亚洲福利视频久久| 国产精品久久久久aaaa九色| 欧美大全免费观看电视剧大泉洋| 欧美日韩电影在线观看| 国产在线播放不卡| 91免费看视频.| 国产精品99一区| 亚洲情综合五月天| 欧美性猛交xxxx久久久| 国产精品爱久久久久久久| 成人免费xxxxx在线观看| 日韩有码在线观看| 尤物99国产成人精品视频| 性欧美xxxx视频在线观看| 性欧美暴力猛交69hd| 欧美第一黄网免费网站| 成人黄色在线免费| 亚洲精品动漫100p| 中文字幕精品av| 97av视频在线| 狠狠色狠狠色综合日日五| 国产精品av网站| 91精品久久久久久久久久久久久久| 欧美裸身视频免费观看| 欧美老少配视频| 亚洲国产成人精品久久久国产成人一区| 97超级碰碰碰久久久| www.亚洲天堂| 欧美高清视频在线观看| 日韩成人激情视频| 国产在线精品自拍| 国产日韩精品在线观看| 欧美日韩美女视频| 午夜精品99久久免费| 欧美激情国产精品| 久久人人爽人人爽人人片亚洲| 欧美日本高清视频| 成人黄色在线观看| 国产98色在线| 久久综合亚洲社区| 日韩网站免费观看| 欧美高清视频在线| 欧美在线视频免费观看| 国产精品免费福利| 久久综合亚洲社区| 欧美大片免费观看在线观看网站推荐| 91免费精品国偷自产在线| 欧美第一黄网免费网站| 欧美中文字幕在线| 久久综合亚洲社区| 97精品视频在线观看| 91久久国产精品| 在线观看欧美成人| 久久在线免费观看视频| 欧美亚洲成人精品| 亚洲缚视频在线观看| 91久久久久久久久| 欧美在线激情网| 亚洲精品国产欧美| 在线亚洲欧美视频| 日韩免费在线看| 欧美激情一区二区三区在线视频观看| 欧美黑人巨大精品一区二区| 午夜精品久久久久久久男人的天堂| 国产做受高潮69| 日韩成人xxxx| 亚洲天堂精品在线| 久久久久久久久国产| 色诱女教师一区二区三区| 日韩一二三在线视频播| 亚洲第一中文字幕| 国产一区二区三区高清在线观看| 欧美日韩视频在线| 岛国av在线不卡| 欧美日韩国产成人在线| 精品国偷自产在线视频| 欧美亚洲伦理www| 热99精品里视频精品| 色综合久久久888| 亚洲免费人成在线视频观看| 一个人看的www久久| 国产91久久婷婷一区二区| 欧美电影电视剧在线观看| 欧美肥老妇视频| 国产精品久久久久秋霞鲁丝| 欧美成年人视频网站| 免费成人高清视频| 97视频在线观看成人| 欧美激情第99页| 欧美有码在线视频| 午夜欧美不卡精品aaaaa| 欧美日韩福利电影| 热re99久久精品国产66热| 操人视频在线观看欧美|