轮播图可以说是最平常最基础不过的东西了,不论是web还是App方面,我本人也是拿来主义,是时候改变了,水平有限,总结出两种方案。 PS: 方案都很简陋,没有左右键切换,也没有下面表示进行的小圆点,只记录原理。 一.  通过display 控制 所谓轮播图就是将要展示的图片做好队列,但是窗口有限,一次只能展示一个图片,那么如果说通过display 设置 当前要展示的图片为 “block”,其他不展示的图片为 “none”,应该就解决这个问题了。 HTML代码:

<div class="main" id="main">
    <div class="banner" id="banner">
        <img src="./images/1.png" alt="" class="banner-slide">
        <img src="./images/2.png" alt="" class="banner-slide">
        <img src="./images/3.png" alt="" class="banner-slide">
        <img src="./images/4.png" alt="" class="banner-slide">
    </div>
</div>

  CSS代码:  

    .main {
        width: 1200px;
        height: auto;
        margin: 50px auto;
    }

    .banner {
        width: 600px;
        height: 460px;
        overflow: hidden;
    }

    .banner-slide {
        width: 600px;
        height: 460px;
    }

  JS代码:

    window.onload = function () {
        // 设置定时器
        var timer = null;
        // 设置 要优先显示 图片位置
        var index = 0;
        // 存储在内存中
        var pics = document.getElementsByClassName("banner-slide");

        function slideImg() {
            var main = document.getElementById("main");
            var banner = document.getElementById("banner");
            // 根据鼠标事件来 设置显示与否
            main.onmouseover = function () {
                stopAutoPlay();
            }
            main.onmouseout = function () {
                startAutoPlay();
            }
            main.onmouseout();
        }
        //开始播放轮播图
        function startAutoPlay() {
            timer = setInterval(function () {
                index++;
                if (index > 3) {
                    index = 0;
                }
                changeImg();
            }, 2000);
        }
        //暂停播放
        function stopAutoPlay() {
            if (timer) {
                clearInterval(timer);
            }
        }
        //改变轮播图
        function changeImg() {
            for (var i = 0; i < pics.length; i++) {
                pics\[i\].style.display = "none";
            }
            pics\[index\].style.display = "block";
        }
        slideImg();

    }