HTML+CSS+JAVASCRIPT幻灯片

≯℡__Kan透↙ 提交于 2020-01-19 15:41:43

没性能的啊,就是循环遍历操作DOM

HTML----code:

<body>
<div class="slide-wrap">
    <div class="slide">
        <ul class="slide-list">
            <li class="slide-item active">
                <img src="HOME/images/1.jpg">
            </li>
            <li class="slide-item">
                <img src="HOME/images/2.jpg">
            </li>
            <li class="slide-item">
                <img src="HOME/images/3.jpg">
            </li>
        </ul>
    </div>
    <!--缩略图-->
    <div class="thumbs">
        <ul class="thumbs-list">
            <li class="thumbs-item cur">
                <img src="HOME/images/1.jpg">
            </li>
            <li class="thumbs-item">
                <img src="HOME/images/2.jpg">
            </li>
            <li class="thumbs-item">
                <img src="HOME/images/3.jpg">
            </li>
        </ul>
    </div>
</div>
<script type="text/javascript" src="HOME/js/index2.js"></script>
<script type="text/javascript">
    var slider = new Slider({
        slideItem: 'slide-item',
        thumbItem: 'thumbs-item'
    });
</script>
</body>

CSS----code:

body {
    margin: 0px;
    padding: 0px;
}

ul {
    list-style: none;
    padding: 0px;
    margin: 0px;
}

a {
    text-decoration: none;
}

img {
    width: 100%;
    height: 100%;
}

.slide-wrap {
    width: 720px;
    height: 360px;
    margin: 50px auto;
    border: 1px solid #9B410E;
}

/*展示缩略图样式*/
.slide {
    width: 600px;
    height: 100%;
    float: left;
    position: relative;
}

.slide .slide-item {
    position: absolute;
    top: 0;
    left: 0;
    height: 360px;
    display: none;
}

.slide .slide-item.active {
    display: block;
}

/*缩略图样式*/
.thumbs {
    width: 120px;
    float: left;
}

.thumbs-item {
    height: 120px;
    opacity: .5;
}

.cur {
    opacity: 1;
}

JavaScript---code:

;(function () {
    var Slider = function (opt) {
        this.slideItems = document.getElementsByClassName(opt.slideItem);
        this.thumbItems = document.getElementsByClassName(opt.thumbItem);
        this.bindClick();
    }
    Slider.prototype = {
        bindClick: function () {
            var slideItem = this.slideItems,
                thumbItem = this.thumbItems;
            for (var i = 0; i < thumbItem.length; i++) {
                (function (j) {
                    thumbItem[j].onclick = function () {
                        for (var k = 0; k < thumbItem.length; k++) {
                            thumbItem[k].className = "thumbs-item";
                            slideItem[k].className = "slide-item";
                        }
                        thumbItem[j].className += " cur"
                        slideItem[j].className += " active";
                    }
                }(i));
            }
        }
    }
    window.Slider = Slider;
}());




标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!