简单轮播图(循环播放)

效果图
素材取自淘宝首页,非广告
原理
原理图
布局
<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实现的自动循环轮播图,我又加上了鼠标移过停留的效果。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,087评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,194评论 4 61
  • 原来色狼,以及不正常的人还是很多,所以出门在外还是要保护好自己
    秋天的傻瓜阅读 1,592评论 0 0
  • 爸爸前几日从济源出差回来给我分享了一件趣事。我小学的时候总一个人去大学校园里厮混,从而结交了一班所谓大学...
    claire_wang阅读 2,087评论 0 4
  • 基本思想 核心思想是“分治法”。 将序列看成nge有序的子序列,每个序列的长度为1,然后两两归并,得到n/2个长度...
    心_的方向阅读 3,161评论 1 0