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

首頁 > 編程 > JavaScript > 正文

多種JQuery循環滾動文字圖片效果代碼

2019-11-20 10:38:28
字體:
來源:轉載
供稿:網友

自己模仿JQ插件的寫法寫了一個循環滾動列表插件,支持自定義上、下、左、右四個方向,支持平滑滾動或者間斷滾動兩種方式,都是通過參數設置。JQ里面有些重復的地方,暫時沒想到更好的方法去精簡。不過效果還是可以的,如下(效果圖上傳后都加速了,實際效果比這個要慢很多):

 html代碼如下:

<!doctype html><html lang="zh-cn"><head><meta charset="utf-8"><title>循環滾動列表</title><link href="css/style.css" rel="stylesheet"/><script src="js/jquery-1.9.1.min.js"></script><script src="js/autoScroll.js"></script><script> $(function(){ //下面是調用語句,以ID名區分 $("#autoScroll01").autoScroll({  direction: 'left',    //滾動方向,'up'、'down'、'left'、'right',*必須參數  interval: 40,      //滾動間隔,單位'ms',一定要大于'滾動速度',*必須參數  speed: 10,      //滾動完成耗時,單位'ms',一定要小于'滾動間隔',*必須參數  distance: 3,      //單次滾動距離,單位'px',*必須參數    liWidth: 144,      //單個li的盒模型高度&寬度(包括margin值。左右滾動只有liWidth參數,上下滾動只有liHeight參數),*必須參數  showNum: 6      //顯示幾個li,父級高會自適應,但不要超過最大個數,*必須參數  }); $("#autoScroll02").autoScroll({  direction: 'up',       interval: 50,      //interval、speed、distance都很小時,就形成了平滑滾動現象。  speed: 10,        distance: 1,        liHeight: 30,            showNum: 4       }); $("#autoScroll03").autoScroll({  direction: 'down',    //向下滾動  interval: 2000,     //2秒滾動一次  speed: 600,      //滾動耗時0.6秒(所以必須2秒內滾完,以免沒滾完就執行下一次滾動了)  distance: 40,     //一次滾動40px  liHeight: 40,     //單個的li的盒模型高度是40px(上下滾動li沒有margin跟padding值)  showNum: 3      //容器里顯示3個li標簽 }); $("#autoScroll04").autoScroll({  direction: 'right',  interval: 2500,     //interval、speed、distance都很大時,就形成了間歇性滾動現象。  speed: 800,  distance: 288,       liWidth: 144,     //左右滾動時,liWidth要算上margin值,注意盒模型  showNum: 5      }); });</script></head><body><!-- wrap和boxs box0*這個div非必需,用于布局而已 --> <div class="wrap"> <!-- 布局必須結構為:外層容器id,里面是 ul 跟 li --> <div class="boxs box01"> <div class="autoBox" id="autoScroll01">  <ul class="clearfix">  <li><a href="#"><img src="images/img01.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img02.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img03.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img04.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img05.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img06.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img07.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img08.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img09.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img10.jpg" alt=""></a></li>  </ul> </div> </div> <!--第二個案例 保持結構不變,id不同就可以復用多個--> <div class="boxs box02"> <div class="autoBox" id="autoScroll02">  <ul>  <li><a href="#">1. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  <li><a href="#">2. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  <li><a href="#">3. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  <li><a href="#">4. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  <li><a href="#">5. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  <li><a href="#">6. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  <li><a href="#">7. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  <li><a href="#">8. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  </ul> </div> </div> <div class="boxs box03"> <div class="autoBox" id="autoScroll03">  <ul>  <li><a href="#">1. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  <li><a href="#">2. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  <li><a href="#">3. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  <li><a href="#">4. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  <li><a href="#">5. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  <li><a href="#">6. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  <li><a href="#">7. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  <li><a href="#">8. 何日功成名遂了,還鄉,醉笑陪公三萬場。不用訴離觴,痛飲從來別有腸。</a></li>  </ul> </div> </div> <div class="clear"></div> <div class="boxs box04"> <div class="autoBox" id="autoScroll04">  <ul class="clearfix">  <li><a href="#"><img src="images/img01.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img02.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img03.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img04.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img05.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img06.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img07.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img08.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img09.jpg" alt=""></a></li>  <li><a href="#"><img src="images/img10.jpg" alt=""></a></li>  </ul> </div> </div></div></body></html>

css樣式如下:

@charset "utf-8";/* 簡單reset */body, ul, li { margin: 0; padding: 0;}body { font: 14px/24px Microsoft YaHei; color: #333;}ul { list-style: none; }a { color: #333; outline: none; text-decoration: none;}a:hover { color: #2986dd; }img { border: none; }.clearfix:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0;}.clear { display: block; clear: both; height: 0; font-size: 0; line-height: 0; content: "."; overflow: hidden;}.wrap { width: 900px; padding-top: 30px; margin: 0 auto;}.boxs { padding: 15px; margin: 0 auto 30px; background-color: #e4fbff;}.box01 { width: 870px; }.box02 { float: left; width: 400px;}.box03 { float: right; width: 400px;}.box04 { width: 720px; }/* 具體樣式 ---------- *//* 通用必需樣式 */ /* PS:有些重要樣式在js里先寫好了,下面id容器、ul和li標簽的樣式比較重要 */ .autoBox { position: relative; margin: 0 auto; overflow: hidden;}.autoBox ul { position: absolute; list-style: none; z-index: 2;}/* 第一、四個列表 */ /* PS:左右滾動型列表需要css定義高度,li標簽可以有margin值 */#autoScroll01, #autoScroll04 { width: auto; height: 174px;}#autoScroll01 ul li, #autoScroll04 ul li { float: left; width: 128px; height: 168px; padding: 3px; margin: 0 5px; _display: inline;}#autoScroll01 li a, #autoScroll04 li a { display: block; padding: 3px; border: 1px solid #dbdbdb; box-shadow: 0 0 3px rgba(170, 223, 252, 0.5);}#autoScroll01 li a:hover, #autoScroll04 li a:hover { border-color: #71ddff; box-shadow: 0 0 3px rgba(77, 185, 245, .90);}#autoScroll01 li img, #autoScroll04 li img { display: block; width: 120px; height: 160px;}/* 第二、三個列表 */ /* PS:上下滾動型列表需要css定義寬度,li標簽盡量不要設置margin值 */#autoScroll02, #autoScroll03 { width: 100%; height: auto;}#autoScroll02 ul li { height: 30px; line-height: 30px; overflow: hidden;}#autoScroll03 ul li { height: 40px; line-height: 40px; overflow: hidden;}#autoScroll02 li a, #autoScroll03 li a { display: block; width: 100%; height: 24px; line-height: 24px; margin: 3px 0; text-overflow: ellipsis; white-space: nowrap; overflow: hidden;}#autoScroll03 li a { margin: 8px 0; }

js代碼如下:

/**  * Name : 循環滾動列表  **/ (function(jQuery){  $.fn.autoScroll = function (o) {  o = $.extend({         //設置默認參數    direction: 'left',   interval: null,   speed: null,   distance: null,           liWidth: null,   liHeight: null,            showNum: null  },o || {});  return this.each(function(){     //回調開始   var $ts = $(this),    $ul = $ts.children("ul"),    $li = $ul.children("li"),    len = $li.length;   if (o.direction == 'up' || o.direction == 'down' ){   //根據類型設置css    $ts.css({ "width": "100%", "height": o.showNum * o.liHeight });    $ul.css({ "width": "100%", "height": len * o.liHeight });    $li.css({ "float": "none", "width": "100%", "height": o.liHeight, "margin": 0,"padding": 0 });   };      if (o.direction == 'left' || o.direction == 'right' ){  //其實也可以在css里寫好    $ts.css({ "width": o.showNum * o.liWidth });    $ul.css({ "width": len * o.liWidth });    $li.css({ "float": "left" });   };   switch (o.direction){          //分四種情況,進行事件調用    case 'left': sroLeft();    break;    case 'right':sroRight();    break;    case 'up':  sroUp();    break;    case 'down': sroDown();    break;    };   function sroLeft(){           //向左滾動事件    $ul.css("left", 0);     var left;    function leftMoving(){     var dis = -o.distance,      dif = -o.liWidth * (len - o.showNum);      left = parseFloat($ul.css("left"));     if (left <= dif){      $ul.css("left",0);      left = 0;      $ul.delay(o.interval);     };     var ltDis = left + dis;     if(ltDis <= dif){      ltDis = dif;     };     $ul.animate({"left":ltDis+"px"}, o.speed);    };    $ul.hover(            //鼠標移上、移下的阻止與恢復滾動     function(){      clearInterval(fnLeft);     },     function(){      fnLeft = setInterval(function(){leftMoving()}, o.interval);     }    );    fnLeft = setInterval(function(){leftMoving()}, o.interval);   };   function sroRight(){          //向右滾動事件    $ul.css("right", 0);     var right;    function rightMoving(){     var dis = -o.distance,      dif = -o.liWidth * (len - o.showNum);      right = parseFloat($ul.css("right"));     if (right <= dif){      $ul.css("right",0);      right = 0;      $ul.delay(o.interval);     };     var rtDis = right + dis;     if(rtDis <= dif){      rtDis = dif;     };     $ul.animate({"right":rtDis+"px"}, o.speed);    };    $ul.hover(     function(){      clearInterval(fnRight);     },     function(){      fnRight = setInterval(function(){rightMoving()}, o.interval);     }    );    fnRight = setInterval(function(){rightMoving()}, o.interval);   };   function sroUp(){           //向上滾動事件    $ul.css("top", 0);    var top;    function upMoving(){     var dis = -o.distance,      dif = -o.liHeight * (len - o.showNum);      top = parseFloat($ul.css("top"));     if (top <= dif){      $ul.css("top",0);      top = 0;      $ul.delay(o.interval);     };     var tpDis = top + dis;     if(tpDis <= dif){      tpDis = dif;     };     $ul.animate({"top":tpDis+"px"}, o.speed);    };    $ul.hover(     function(){      clearInterval(fnUp);     },     function(){      fnUp = setInterval(function(){upMoving()}, o.interval);     }    );    fnUp = setInterval(function(){upMoving()}, o.interval);   };   function sroDown(){           //向下滾動事件    $ul.css("bottom",0);    var bottom;    function downMoving(){     var dis = -o.distance,      dif = -o.liHeight * (len - o.showNum);      bottom = parseFloat($ul.css("bottom"));     if (bottom <= dif){      $ul.css("bottom",0);      bottom = 0;      $ul.delay(o.interval);     };     var bmDis = bottom + dis;     if(bmDis <= dif){      bmDis = dif;     };     $ul.animate({"bottom":bmDis+"px"}, o.speed);    };    $ul.hover(     function(){      clearInterval(fnDown);     },     function(){      fnDown = setInterval(function(){downMoving()}, o.interval);     }    );    fnDown = setInterval(function(){downMoving()}, o.interval);   };  }); };})(jQuery);


兼容到IE6+,jq庫用1.7+的都沒問題 。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久精品视频中文字幕| 国产日韩在线播放| 亚洲天堂日韩电影| 亚洲视频在线免费看| 亚洲qvod图片区电影| 国产成人一区二区三区小说| 91中文字幕在线| 日韩小视频在线| 亚洲精品av在线播放| 久久婷婷国产麻豆91天堂| 日韩精品中文字幕视频在线| 午夜精品久久久久久久99热| 91av网站在线播放| 国产欧美一区二区三区在线看| 伊人久久男人天堂| 色偷偷亚洲男人天堂| 久久久成人的性感天堂| 91久久在线视频| 日韩成人在线电影网| 久久99久久久久久久噜噜| 亚洲欧美日韩天堂一区二区| 国产成人涩涩涩视频在线观看| 日本亚洲欧美三级| 国产丝袜视频一区| 欧美一级淫片videoshd| 久久久精品电影| 538国产精品一区二区免费视频| 91亚洲精品在线| 日本一区二区三区四区视频| 亚洲精品国产精品乱码不99按摩| 尤物九九久久国产精品的特点| 亚洲级视频在线观看免费1级| 亚洲精品狠狠操| 97久久精品国产| 青青久久av北条麻妃海外网| 日韩av免费观影| 久久精品人人爽| 久久精品成人欧美大片古装| 欧美激情视频播放| 日韩一二三在线视频播| 成人免费视频网| 色哟哟网站入口亚洲精品| 色天天综合狠狠色| 国产专区精品视频| 777精品视频| 国产女人精品视频| 国产伊人精品在线| 精品久久久国产精品999| 午夜精品久久久久久久男人的天堂| 亚洲小视频在线观看| 中文字幕亚洲欧美在线| 国产成人久久久精品一区| 在线观看国产精品日韩av| 日本高清久久天堂| 欧美成人自拍视频| 欧美性理论片在线观看片免费| 亚洲美女久久久| 亚洲va欧美va在线观看| 国产aaa精品| 亚洲第一视频网站| 久久亚洲影音av资源网| 欧美激情欧美激情在线五月| 亚洲直播在线一区| 2019中文字幕全在线观看| 久久久久久久影院| 97视频在线看| 欧美寡妇偷汉性猛交| 欧美成人精品一区| 国产成人精品网站| 国产999精品久久久| 伊人久久精品视频| 精品亚洲一区二区三区在线播放| 国产成人av在线播放| 欧美日韩高清在线观看| 亚洲国产精品一区二区久| 欧美一级视频一区二区| 欧美色道久久88综合亚洲精品| 国产欧美日韩最新| 日本欧美精品在线| 欧美一级高清免费播放| 自拍视频国产精品| 国内精品国产三级国产在线专| 国产美女被下药99| 日本一本a高清免费不卡| 久久久久久久一| 色综合视频一区中文字幕| 国产一区私人高清影院| 97视频在线观看免费| 8090理伦午夜在线电影| 久久精品成人欧美大片古装| 神马国产精品影院av| 久久资源免费视频| 欧美成人性色生活仑片| 久久综合88中文色鬼| 精品国产自在精品国产浪潮| 欧美肥婆姓交大片| 欧美wwwxxxx| 亚洲色图综合久久| 欧美一级bbbbb性bbbb喷潮片| 国产精品久久久久久久美男| 欧美伦理91i| 亚洲色图色老头| 亚洲欧洲在线免费| 欧美视频一区二区三区…| 日韩视频在线免费观看| 国产999精品| 国产精品自产拍高潮在线观看| 久久久亚洲精品视频| 97香蕉久久夜色精品国产| 亚洲美女喷白浆| 色婷婷av一区二区三区久久| 一区二区三区 在线观看视| 亚洲第一黄色网| 国产精品视频自在线| 91久久久久久| 亚洲福利视频网站| 正在播放欧美视频| 亚洲视频在线免费观看| 国内免费久久久久久久久久久| 亚洲欧美www| 日韩最新免费不卡| 国产精品人成电影在线观看| 亚洲无限乱码一二三四麻| 日本精品一区二区三区在线播放视频| 狠狠久久亚洲欧美专区| 久久韩剧网电视剧| 精品亚洲精品福利线在观看| 欧美精品电影免费在线观看| 亚洲图片在线综合| 欧美精品制服第一页| 国产不卡视频在线| 久久成人这里只有精品| 一区二区三区国产在线观看| 国产精品丝袜视频| 国产亚洲欧美另类中文| 国产91精品久| 国产亚洲欧洲高清| 51精品在线观看| 国产精品成人观看视频国产奇米| 亚洲国产天堂久久综合网| 精品一区二区亚洲| 久久久中文字幕| 国产91色在线免费| 国产成人jvid在线播放| 欧美极品xxxx| 5278欧美一区二区三区| 国产精品久久久久福利| 日韩精品999| 亚洲成人久久久久| 日韩人在线观看| 国产在线观看精品一区二区三区| 亚洲少妇激情视频| 亚洲成人av在线| 亚洲乱码国产乱码精品精| 4k岛国日韩精品**专区| 日韩精品极品视频免费观看| 亚洲尤物视频网| 亚洲色图色老头| 亚洲国产精品va在线观看黑人| 欧美极品少妇xxxxⅹ免费视频| 亚洲图中文字幕| 国产精品久久久久99| 欧美激情视频在线免费观看 欧美视频免费一| 日韩美女免费观看|