美文网首页
简单轮播图(循环播放)

简单轮播图(循环播放)

作者: 嘿喵heyMeow | 来源:发表于2016-12-20 23:34 被阅读0次
    效果图
    素材取自淘宝首页,非广告
    原理
    原理图
    布局
    <body>
      <div class="box">    
          <ul id="oul">        
              <li><a href=""><img src="images/scan/1.jpg" alt=""></a></li>            
              <li><a href=""><img src="images/scan/2.jpg" alt=""></a></li>        
              <li><a href=""><img src="images/scan/3.webp" alt=""></a></li>        
              <li><a href=""><img src="images/scan/4.webp" alt=""></a></li>
              //第五张图片和第一张图片一样,形成无缝连接           
              <li><a href=""><img src="images/scan/1.jpg" alt=""></a></li>
          </ul>
      </div>
    </body>
    
    样式
    <style>    
        *{        margin: 0;        padding: 0;    }    
        .box{        
            width: 520px; 
            height: 280px; 
            margin: 100px auto;
            overflow: hidden;
            position: relative; //子绝父相
        }    
        .box ul{ 
            width: 500%;
            height: 100%;
            position: absolute; //子绝父相,通过设置ul的left值改变让ul移动
        }    
        .box ul li{
            list-style: none;
            float: left;    }
    </style>
    
    JS实现
    <script>
        window.onload = function(){
            var oul = document.getElementById('oul');  //获取ul
            var num = 0;  //设置ul的left值的变量为num
            var timer;
            timer = setInterval(scoll,5);
            //鼠标滑过时清空定时器让ul停止走动
            oul.onmouseover = function(){
                clearInterval(timer);
            }
           //鼠标移走时定时器重新开始,num继续--,ul继续开始走动
            oul.onmouseout = function(){
                timer = setInterval(scoll,5);
            };
            //num--使ul向左移动,当走过4个图片宽度时让ul从最初的位置开始走动
            function scoll(){
                num --;
                num<=-520*4?num=0:num=num;
                oul.style.left = num + 'px';
            }
        }
    </script>
    

    以上就是用JS实现的自动循环轮播图,我又加上了鼠标移过停留的效果。

    相关文章

      网友评论

          本文标题:简单轮播图(循环播放)

          本文链接:https://www.haomeiwen.com/subject/njbfvttx.html