zoukankan      html  css  js  c++  java
  • css3+js实现自动轮播(初稿)

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width,initial-scale=1">
        <title>Banner</title>
        <style>
            *{
                margin: 0;
                padding: 0;
            }
            .banner{
                width: 600px;
                height: 400px;
                margin: 20px auto;
                overflow: hidden;
            }
            .banner>ul.slider{
                list-style: none;
                height: 100%;
            }
            ul.slider>li{
                float: left;
            }
            ul.slider>li,ul.slider>li>img{
                height: 100%;
            }
            ul.slider>li>img{
                width: 100%;
            }
            .stranslateMove{
                animation: stranslateX 3s infinite;
                -webkit-animation: stranslateX 3s infinite;
            }
            @keyframes stranslateX{
                from{ margin-left: 0; }
                to{ margin-left: -600px; }
            }
            @-webkit-keyframes stranslateX{
                from{ margin-left: 0; }
                to{ margin-left: -600px; }
            }
            button{
                display: block;
                margin: 0 auto;
            }
        </style>
    </head>
    <body>
        <div class="banner">
            <ul class="slider ">
                <li class="stranslateMove">
                    <img src="banner1.jpg">
                </li>
                <li>
                    <img src="banner2.jpg">
                </li>
                <li>
                    <img src="banner3.jpg">
                </li>
                <li>
                    <img src="banner4.jpg">
                </li>
                <li>
                    <img src="banner5.jpg">
                </li>
            </ul>
        </div>
        <p>
            <button class="pause">pause</button>
        </p>
        <script type="text/javascript">
            !function(){
                function initBanner(){
                    // 初始化轮播容器的宽度,让每张图片的宽度等于容器的宽度
                    var slider = document.querySelector(".slider"),                //轮播容器
                        bannerWidth = document.querySelector(".banner").offsetWidth,    //视图容器宽度
                        liWidth = document.querySelectorAll(".slider>li"),
                         sliderlen = liWidth.length + 2;
                    console.log(bannerWidth);
                    for(var i = 0; i<liWidth.length;i++){
                        liWidth[i].style.width = bannerWidth + 'px';
                    }
                    slider.style.width = bannerWidth * sliderlen + 'px';
    
                }
                initBanner();
            }();
            var t;
            function autoPlay(){
                document.querySelector(".slider>li:first-child").className = "";
                document.querySelector(".slider").appendChild(document.querySelector(".slider>li:first-child"));
                document.querySelector(".slider>li:first-child").className = "stranslateMove";
                t = setTimeout("autoPlay()",3000);
            }
            setTimeout("autoPlay()",3000);
            document.querySelector("button").onclick = function(){
                clearTimeout(t);
                document.querySelector(".slider>li:first-child").className = "";
            }
        </script>
    </body>
    </html>
  • 相关阅读:
    3294 [SCOI2016]背单词
    P4551 最长异或路径
    BZOJ 4260: Codechef REBXOR
    P2322 [HNOI2006]最短母串问题
    P2444 [POI2000]病毒
    P3121 [USACO15FEB]审查(黄金)Censoring (Gold)
    BZOJ 3942: [Usaco2015 Feb]Censoring
    EZOJ #77
    EZOJ #73
    547D Mike and Fish
  • 原文地址:https://www.cnblogs.com/nullman/p/8623954.html
Copyright © 2011-2022 走看看