zoukankan      html  css  js  c++  java
  • jq-demo-轮播图

      1 <!DOCTYPE html>
      2 <html>
      3     <head>
      4         <meta charset="UTF-8">
      5         <title></title>
      6         <style>
      7             *{margin: 0; padding: 0; border: none;}
      8             ul, li {list-style: none;}
      9             #box {
     10                  600px;
     11                 height: 300px;
     12                 margin: 100px auto;
     13                 overflow: hidden;
     14                 border: 10px solid blue;
     15                 position: relative;
     16             }
     17             #list1 {
     18                  3100px;
     19                 height: 300px;
     20                 position: absolute;
     21                 left: 0;
     22                 top: 0;
     23             }
     24             #list1 li, #list1 img {
     25                  600px;
     26                 height: 300px;
     27             }
     28             #list1 li {
     29                 float: left;
     30             }
     31             #list2  {
     32                  150px;
     33                 height: 20px;
     34                 position: absolute;
     35                 right: 30px;
     36                 bottom: 30px;
     37             }
     38             #list2 li {
     39                  18px;
     40                 height: 18px;
     41                 border: 1px solid black;
     42                 background: yellow;
     43                 text-align: center;
     44                 line-height: 18px;
     45                 margin-left: 5px;
     46                 float: left;
     47                 cursor: pointer;
     48             }
     49             
     50             #list2 li.active {
     51                 background: green;
     52             }
     53             
     54             #prev, #next {
     55                  50px;
     56                 height: 22px;
     57                 background: orange;
     58                 position: absolute;
     59                 top: 45%;
     60                 cursor: pointer;
     61             } 
     62             #prev {
     63                 left: 10px;
     64             }
     65             #next {
     66                 right: 10px;
     67             }
     68             
     69         </style>
     70         <script src="js/jquery-1.12.3.js"></script>
     71         <script>
     72             $(function(){
     73                 
     74                 //jq轮播图
     75                 var list1 = $("#list1");
     76                 var list2 = $("#list2");
     77                 var li1 = $("#list1 li");
     78                 var li2 = $("#list2 li");
     79                 
     80                 //复制第一张图到最后
     81                 li1.first().clone(true).appendTo(list1);
     82                 
     83                 //
     84                 var size = $("#list1 li").size();
     85                 list1.width(600*size);
     86                 
     87                 //开启定时器
     88                 var i = 0;
     89                 var timer = setInterval(function(){
     90                     i++;
     91                     move();
     92                 }, 2000);
     93                 
     94                 function move(){
     95                     //上一页
     96                     if (i < 0) {
     97                         list1.css("left", -600*(size-1));
     98                         i = size-2;
     99                     }
    100                     //下一页
    101                     if (i >= size){
    102                         list1.css("left", 0);
    103                         i = 1;
    104                     }
    105                     
    106                     list1.stop().animate({left:-i*600}, 500);
    107                     
    108                     li2.eq(i).addClass("active").siblings().removeClass("active");
    109                     if (i == size-1) {
    110                         li2.eq(0).addClass("active").siblings().removeClass("active");
    111                     }
    112                 }
    113                 
    114                 //上一页
    115                 $("#prev").click(function(){
    116                     i--;
    117                     move();
    118                 })
    119                 
    120                 //下一页
    121                 $("#next").click(function(){
    122                     i++;
    123                     move();
    124                 })
    125                 
    126                 li2.mouseenter(function(){
    127                     i = $(this).index();
    128                     move();
    129                 })
    130                 
    131                 $("#box").hover(function(){
    132                     clearInterval(timer);
    133                 }, 
    134                 function(){
    135                     timer = setInterval(function(){
    136                         i++;
    137                         move();
    138                     }, 2000);
    139                 })
    140                 
    141                 
    142             })
    143         </script>
    144     </head>
    145     <body>
    146         <div id="box">
    147             <ul id="list1">
    148                 <li><img src="images/b1.jpg" /></li>
    149                 <li><img src="images/b2.jpg" /></li>
    150                 <li><img src="images/b3.jpg" /></li>
    151                 <li><img src="images/b4.jpg" /></li>
    152             </ul>
    153             <ul id="list2">
    154                 <li class="active">1</li>
    155                 <li>2</li>
    156                 <li>3</li>
    157                 <li>4</li>
    158             </ul>
    159             <div id="prev">上一页</div>
    160             <div id="next">下一页</div>
    161         </div>
    162     </body>
    163 </html>

    clone(true)  方法  是复制一个元素及其所有事件, clone()  方法  是复制一个元素,不包含其所有事件。

     jq透明度轮播图

      1 <!DOCTYPE html>
      2 <html>
      3     <head>
      4         <meta charset="UTF-8">
      5         <title></title>
      6         <style>
      7             * {
      8                 margin: 0;
      9                 padding: 0;
     10                 border: none;
     11             }
     12             ul, li {
     13                 list-style: none;
     14             }
     15              #box {
     16                   600px;
     17                  height: 300px;
     18                  margin: 100px auto;
     19                  position: relative;
     20                  /*overflow: hidden;*/
     21                  border: 10px solid blue;
     22              }
     23             
     24             #list1 {
     25                  600px;
     26                 height: 300px;
     27                 position: absolute;
     28                 left: 0;
     29                 top: 0;
     30             }
     31             #list1 li, #list1 img {
     32                  600px;
     33                 height: 300px;
     34             }
     35             #list1 li {
     36                 position: absolute;
     37                 left: 0;
     38                 top: 0;
     39             }
     40             
     41             #list2 {
     42                  600px;
     43                 height: 30px;
     44                 position: absolute;
     45                 left: 10%;
     46                 bottom: -60px;
     47             }
     48             #list2 li, #list2 img {
     49                  120px;
     50                 height: 60px;
     51                 float: left;
     52                 border: 1px solid red;
     53                 margin-right: 5px;
     54                 cursor: pointer;
     55             }
     56             
     57             #list2 li {
     58                 opacity: 0.3;
     59             }
     60             #list2 .active {
     61                 /*background: green;*/
     62                 opacity: 1;
     63             }
     64             
     65         </style>
     66         
     67         <script src="js/jquery-1.12.3.js"></script>
     68         <script>
     69             $(function(){
     70                 
     71                 var _ul1 = $("#list1");
     72                 var _ul2 = $("#list2");
     73                 var _li1 = $("#list1 li");
     74                 var _li2 = $("#list2 li");
     75                 
     76                 //初始化显示第一张图
     77                 _li1.eq(0).show().siblings().hide();
     78                 
     79                 //图片总数量
     80                 var size = $("#list1 li").size(); //4
     81                 
     82                 //自动轮播
     83                 var i = 0; //记录图片下标
     84                 var timer = setInterval(function(){
     85                     i++;
     86                     move(); 
     87                 }, 2000);
     88                 
     89                 //移动的函数
     90                 function move(){
     91                     
     92                     //如果i超出了图片总数量
     93                     if (i == size) {
     94                         i = 0; //即将移动到2张图
     95                     }
     96                     
     97                     //透明度切换到第i张图
     98                     _li1.eq(i).stop().fadeIn().siblings().stop().fadeOut();
     99                     
    100                     //改变ul2的按钮状态
    101                     _li2.eq(i).removeClass().addClass("active").siblings().removeClass("active"); 
    102                     
    103                 }
    104                                 
    105                 
    106                 //li2上面的按钮
    107                 _li2.hover(function(){
    108                     var index = $(this).index();
    109                     //console.log(index);
    110                     i = index;
    111                     move();
    112                 })
    113                 
    114                 //移入box, 移出box
    115                 $("#box").hover(function(){
    116                     //移入, 关闭定时器
    117                     clearInterval(timer);
    118                 }, 
    119                 function(){
    120                     //移出, 重新开启定时器
    121                     timer = setInterval(function(){
    122                         i++;
    123                         move();
    124                     }, 2000);
    125                 })
    126                 
    127                 
    128             })
    129         </script>
    130         
    131     </head>
    132     <body>
    133         <div id="box">
    134             <ul id="list1">
    135                 <li><img src="images/b1.jpg" /></li>
    136                 <li><img src="images/b2.jpg" /></li>
    137                 <li><img src="images/b3.jpg" /></li>
    138                 <li><img src="images/b4.jpg" /></li>
    139             </ul>
    140             <ul id="list2">
    141                 <li class="active"><img src="images/b1.jpg" /></li>
    142                 <li><img src="images/b2.jpg" /></li>
    143                 <li><img src="images/b3.jpg" /></li>
    144                 <li><img src="images/b4.jpg" /></li>
    145             </ul>
    146             
    147         </div>
    148         
    149     </body>
    150 </html>

    ajax  获取数据的轮播图

    lunbo.json

     1 [
     2     {
     3         "id": 101,
     4         "img": "images/b1.jpg"
     5     },
     6     {
     7         "id": 102,
     8         "img": "images/b2.jpg"
     9     },
    10     {
    11         "id": 103,
    12         "img": "images/b3.jpg"
    13     }
    14     
    15 ]
      1 <!DOCTYPE html>
      2 <html>
      3     <head>
      4         <meta charset="UTF-8">
      5         <title></title>
      6         <style>
      7             *{margin: 0; padding: 0; border: none;}
      8             ul, li {list-style: none;}
      9             #box {
     10                  600px;
     11                 height: 300px;
     12                 margin: 100px auto;
     13                 overflow: hidden;
     14                 border: 10px solid blue;
     15                 position: relative;
     16             }
     17             #list1 {
     18                  3100px;
     19                 height: 300px;
     20                 position: absolute;
     21                 left: 0;
     22                 top: 0;
     23             }
     24             #list1 li, #list1 img {
     25                  600px;
     26                 height: 300px;
     27             }
     28             #list1 li {
     29                 float: left;
     30             }
     31             #list2  {
     32                  150px;
     33                 height: 20px;
     34                 position: absolute;
     35                 right: 30px;
     36                 bottom: 30px;
     37             }
     38             #list2 li {
     39                  18px;
     40                 height: 18px;
     41                 border: 1px solid black;
     42                 background: yellow;
     43                 text-align: center;
     44                 line-height: 18px;
     45                 margin-left: 5px;
     46                 float: left;
     47                 cursor: pointer;
     48             }
     49             
     50             #list2 li.active {
     51                 background: green;
     52             }
     53             
     54             #prev, #next {
     55                  50px;
     56                 height: 22px;
     57                 background: orange;
     58                 position: absolute;
     59                 top: 45%;
     60                 cursor: pointer;
     61             } 
     62             #prev {
     63                 left: 10px;
     64             }
     65             #next {
     66                 right: 10px;
     67             }
     68             
     69         </style>
     70         <script src="js/jquery-1.12.3.js"></script>
     71         <script>
     72             $(function(){
     73                 
     74                 //通过Ajax获取数据
     75                 $.get("json/lunbo.json", function(data){
     76                     //console.log(data); 
     77                     var arr = data;
     78                     
     79                     //遍历数组arr
     80                     for (var i=0; i<arr.length; i++) {
     81                         var obj = arr[i]; //每个图片的数据
     82                         
     83                         //创建li节点
     84                         $("<li><img src="+ obj.img +" /></li>").appendTo("#list1");  
     85                         if (i == 0){
     86                             $("<li class='active'>"+ (i+1) +"</li>").appendTo("#list2");
     87                         }
     88                         else {
     89                             $("<li>"+ (i+1) +"</li>").appendTo("#list2");
     90                         }
     91                     } 
     92                     
     93                     //lunbo
     94                     lunbo();
     95                     
     96                 })
     97                 
     98                 //jq轮播图
     99                 function lunbo(){
    100                     var list1 = $("#list1");
    101                     var list2 = $("#list2");
    102                     var li1 = $("#list1 li");
    103                     var li2 = $("#list2 li");
    104                     
    105                     //复制第一张图到最后
    106                     li1.first().clone(true).appendTo(list1);
    107                     
    108                     //
    109                     var size = $("#list1 li").size();
    110                     list1.width(600*size);
    111                     
    112                     //开启定时器
    113                     var i = 0;
    114                     var timer = setInterval(function(){
    115                         i++;
    116                         move();
    117                     }, 2000);
    118                     
    119                     function move(){
    120                         
    121                         if (i < 0) {
    122                             list1.css("left", -600*(size-1));
    123                             i = size-2;
    124                         }
    125                         
    126                         if (i >= size){
    127                             list1.css("left", 0);
    128                             i = 1;
    129                         }
    130                         
    131                         list1.stop().animate({left:-i*600}, 500);
    132                         
    133                         li2.eq(i).addClass("active").siblings().removeClass("active");
    134                         if (i == size-1) {
    135                             li2.eq(0).addClass("active").siblings().removeClass("active");
    136                         }
    137                     }
    138                     
    139                     //上一页
    140                     $("#prev").click(function(){
    141                         i--;
    142                         move();
    143                     })
    144                     
    145                     //下一页
    146                     $("#next").click(function(){
    147                         i++;
    148                         move();
    149                     })
    150                     
    151                     li2.mouseenter(function(){
    152                         i = $(this).index();
    153                         move();
    154                     })
    155                     
    156                     $("#box").hover(function(){
    157                         clearInterval(timer);
    158                     }, 
    159                     function(){
    160                         timer = setInterval(function(){
    161                             i++;
    162                             move();
    163                         }, 2000);
    164                     })
    165                 }
    166                 
    167             })
    168         </script>
    169     </head>
    170     <body>
    171         <div id="box">
    172             <ul id="list1">
    173                 <!--<li><img src="images/b1.jpg" /></li>
    174                 <li><img src="images/b2.jpg" /></li>
    175                 <li><img src="images/b3.jpg" /></li>
    176                 <li><img src="images/b4.jpg" /></li>-->
    177             </ul>
    178             <ul id="list2">
    179                 <!--<li class="active">1</li>
    180                 <li>2</li>
    181                 <li>3</li>
    182                 <li>4</li>-->
    183             </ul>
    184             <div id="prev">上一页</div>
    185             <div id="next">下一页</div>
    186         </div>
    187     </body>
    188 </html>
  • 相关阅读:
    Tomcat安装和配置过程
    Java集合框架概述
    Hash表的原理
    Java 浅拷贝和深拷贝的理解和实现方式
    Nginx 配置上传文件大小
    将博客搬至CSDN
    vscode中设置vue代码片段
    底部标签栏获取token失败
    Eacharts K线报错问题
    阿里字体图标库在项目中引用
  • 原文地址:https://www.cnblogs.com/1032473245jing/p/7504050.html
Copyright © 2011-2022 走看看