今天,带来的是一个图片的轮播滚动效果!

  先来看一下效果展示:亲,请点击这里

  原理很简单,设置一个定时器,使图片列表在每隔一段时间后滚动一次。而循环效果,就是在每一滚动的时候,将第一张图片放到最后一张的后面,详细请看代码。

 

  HTML结构代码如下:

 1     <div class="content">
 2         <div class="box">
 3             /*滚动的盒子*/
 4             <ul id="scroll_box">
 5                 <li><img src="../Images/1.jpg" alt=""/></li>
 6                 <li><img src="../Images/2.jpg" alt=""/></li>
 7                 <li><img src="../Images/3.jpg" alt=""/></li>
 8                 <li><img src="../Images/4.jpg" alt=""/></li>
 9                 <li><img src="../Images/5.jpg" alt=""/></li>
10                 <li><img src="../Images/6.jpg" alt=""/></li>
11                 <li><img src="../Images/7.jpg" alt=""/></li>
12                 <li><img src="../Images/8.jpg" alt=""/></li>
13                 <li><img src="../Images/9.jpg" alt=""/></li>
14                 <li><img src="../Images/10.jpg" alt=""/></li>
15             </ul>
16         </div>
17     </div>

 

  样式代码:

1     <style type="text/css">
2         *{margin:0px;padding:0px;}
3         .content{width:800px;margin:30px auto;height:200px;}
4         .box{width:800px;overflow:hidden;height:200px;}
5         #scroll_box{list-style:none;}
6         #scroll_box li{width:200px;float:left;height:200px;}
7         #scroll_box li img{width:200px;height:200px;}
8     </style>

 

  JS脚本代码:

 1     <script type="text/javascript">
 2         var length = $("#scroll_box li").length;
 3         var liWidth = $("#scroll_box li").outerWidth(true);
 4         var boxWidth = $(".box").outerWidth(true);
 5         var showLength = Math.ceil(boxWidth / liWidth); //显示图片个数
 6         var speed = 1000;   //滚动速度
 7         var time = 3000;    //滚动间隔
 8         var scrollIndex = 1;    //每次滚动的图片数量
 9         $("#scroll_box").css("width",length * liWidth);     //设置滚动盒子宽度
10         function scroll(){
11             $("#scroll_box").stop().animate({"margin-left":"-"+scrollIndex*liWidth+"px"},speed,function(){
12                 $("#scroll_box").css("margin-left",0);
13                 for(var i =0;i < scrollIndex;i++){
14                     //将第一张图片放到最后一张图片后面
15                     $("#scroll_box").find("li").last().after($("#scroll_box").find("li").first());
16                 }
17             });
18         }
19         setInterval(scroll,time);
20     </script>

 

  其中需要注意的是,在脚本中,我们需要一个for循环来控制图片的换位操作。这里的循环次数取决于我们每次滚动图片的数量。读者可以亲自尝试。

 

  享受代码,享受生活。网页效果,每日一更。