2018-11-10排他思想做轮播图

这个轮播图没包括无缝滚动

image.png

html代码

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>轮播图</title>
        <link rel="stylesheet" type="text/css" href="css/index.css"/>
        <script src="js/index.js"></script>
    </head>
    <body>
        <!-------------最外层容器----------------->
        <div class="box">
            <!-----------------放图片的容器------------------->
            <div class="imglist" id="imglist">
                <ul>
                    <li class="current"><a href="#"><img src="images/1.jpg" alt="" /></a></li>
                    <li><a href="#"><img src="images/2.jpg" alt="" /></a></li>
                    <li><a href="#"><img src="images/3.jpg" alt="" /></a></li>
                    <li><a href="#"><img src="images/4.jpg" alt="" /></a></li>
                    <li><a href="#"><img src="images/5.jpg" alt="" /></a></li>
                </ul>
            </div>
            <!----------------------放左右按钮的容器 --------------------------->
            <div class="btn">
                <span class="leftbtn" id="left"></span>
                <span class="rightbtn" id="right"></span>
            </div>
            <!---------------放小圆圈的容器------------>
            <div class="circle" id="cicle">
                <ul>
                    <li class="current"></li>
                    <li></li>
                    <li></li>
                    <li></li>
                    <li></li>
                </ul>
            </div>
        </div>
    </body>
</html>

css代码

* {
    margin: 0;
    padding: 0;
}
.box {
    width: 672px;
    height: 320px;
    /*border: 1px solid #ddd;*/
    margin: 100px auto;
    position: relative;
}
.imglist ul li img {
    width: 672px;
    height: 320px;
}
ul {
    list-style: none;
}
.imglist ul li {
    width: 672px;
    height: 320px;
    position: absolute;
    left: 0;
    top: 0;
    /*默认图片全部隐藏*/
    display: none;
}
/*有current类的图片显示*/
.imglist ul li.current {
    display: block;
}
.btn span {
    width: 24px;
    height: 36px;
    background: rgba(0,0,0,.5) url(../images/left.png);
    position: absolute;
    top: 50%;
    margin-top: -18px;
}
.btn span.leftbtn {
    left: 10px;
}
.btn span.rightbtn {
    right: 10px;
    background: url(../images/right.png);
}
.circle {
    position: absolute;
    bottom: 10px;
    right: 10px;
}
.circle ul li {
    width: 20px;
    height: 20px;
    background: rgba(0,0,0,.5);
    border-radius: 50%;
    float: left;
    margin-right: 10px;
}
.circle ul li.current {
    background-color: #f00;
}


js代码

window.onload = function(){
    //获取元素
    var imglis = document.getElementById("imglist").getElementsByTagName("li");
    var leftbtn = document.getElementById("left");
    var rightbtn = document.getElementById("right");
    var circlelis = document.getElementById("cicle").getElementsByTagName("li");
    
    //信号量
    var index = 0;
    rightbtn.onclick = function(){
        index++;
        changePic();
    }
    leftbtn.onclick = function(){
        index--;
        changePic();
    }
    //小圆点批量监听
    for (var i = 0;i < circlelis.length;i++){
        //绑定自定义属性
        circlelis[i].idx = i;
        circlelis[i].onmouseover = function(){
            //鼠标进入小圆点时要更改index值
            index = this.idx;
            
            //调用图片切换的函数
            changePic();
        }
    }
    function changePic(){
        if (index > imglis.length-1)index = 0;
        if (index < 0)index = imglis.length - 1;
        //根据信号量index做排他,实现图片的切换
        for (var i = 0;i < imglis.length;i++){
            imglis[i].className = '';
        }
        imglis[index].className = 'current';
        
        //根据信号量index做排他,实现小圆点的切换
    for (var i = 0;i < imglis.length;i++){
            circlelis[i].className = '';
        }
        circlelis[index].className = 'current';
    
    }
    
}

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

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,040评论 3 119
  • 曾经热恋,走过平淡。走过三年的路回头看看,也就在眼前 以后可能不会在轰轰烈烈,平静的相处,时刻不忘的牵挂 真正的相...
    读书丰富人生阅读 942评论 0 0
  • 手机定时了10分钟,开始自由书写。 一直以来,我都是这样玩的。 今天和过去很多次不同,过去是凭着感觉或者看字数,差...
    梁超文阅读 1,215评论 2 2
  • 驱车港城道, 临港抛后脑。 跨越国窑桥, 跃马滨江潮。 老友要辞行, 送品礼不少。 饯行酒应喝, 友情太重要。 内...
    彝良二杆子阅读 1,482评论 0 0
  • 今年已经走向结尾 稍微回想一下,2016我遭遇了很多的事。这些事我想可以称为成长的阵痛。 父母对我的冷漠,亲人对我...
    蝎蝎迪迪阅读 952评论 0 0