• 技术文章 >web前端 >js教程

    原生js实现轮播图

    小云云小云云2018-03-22 17:39:57原创1307
    本文主要和大家分享原生js实现轮播图,主要以代码形式,希望能帮助到大家。

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <style type="text/css">        /*重置样式*/        *{margin: 0;padding: 0; list-style: none;}        /*wrap的轮播图和切换按钮样式*/        .wrap{height: 410px;width: 990px;margin: 100px auto; overflow:hidden;position: relative;}
            .wrap ul{position: absolute;}
            .wrap ul li{height: 410px;}
            .wrap ol{position: absolute;right: 10px;bottom: 10px;}
            .wrap ol li{height: 20px;width: 20px;  background-color:#fff;border: 1px solid #eee; margin-left: 10px;float:left; line-height: 20px; text-align: center;}
            .wrap ol li.active{background-color: #330099; color: #fff; border: 2px solid green;}
        </style>
    </head>
    <body><!-- wrap包裹录播的图片以及可点击跳转的按钮 --><p class="wrap" id="wrap">
        <ul id="pic">
            <li><img src="picture/focus_1.png" alt=""></li>
            <li><img src="picture/focus_2.png" alt=""></li>
            <li><img src="picture/focus_3.png" alt=""></li>
            <li><img src="picture/focus_4.png" alt=""></li>
        </ul>
        <ol id="list">
            <li class="active">1</li>
            <li>2</li>
            <li>3</li>
            <li>4</li>
        </ol>
    </p>
    <script type="text/javascript">    window.onload=function(){        var wrap=document.getElementById('wrap'),
                pic=document.getElementById('pic'),
                list=document.getElementById('list').getElementsByTagName('li'),
                index=0,
                timer=null;        // 定义并调用自动播放函数        if(timer){            clearInterval(timer);
                timer=null;
            }
            timer=setInterval(autoplay,2000);        // 定义图片切换函数        function autoplay(){
                index++;            if(index>=list.length){
                    index=0;
                }            changeoptions(index);
            }        // 鼠标划过整个容器时停止自动播放        wrap.onmouseover=function(){            clearInterval(timer);
            }        // 鼠标离开整个容器时继续播放至下一张        wrap.onmouseout=function(){
                timer=setInterval(autoplay,2000);
            }        // 遍历所有数字导航实现划过切换至对应的图片        for(var i=0;i<list.length;i++){
                list[i].id=i;
                list[i].onmouseover=function(){                clearInterval(timer);                changeoptions(this.id);
                }
            }        function changeoptions(curindex){            for(var j=0;j<list.length;j++){
                    list[j].className='';
                    pic.style.top=0;
                }
                list[curindex].className='active';
                pic.style.top=-curindex*410+'px';
                index=curindex;
            }
        }
    </script>
    </body>
    </html>

    相关推荐:

    原生js实现自动轮播图

    两种js实现轮播图的方式

    js实现移动端手指滑动轮播图效果

    以上就是原生js实现轮播图的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:javascript 实现 原生
    上一篇:js和jquery知识点汇总 下一篇:Node.js的非对称加密详解
    大前端线上培训班

    相关文章推荐

    • 手把手教你使用工具切换 node 版本• javascript如何获取当前方法名• javascript怎么检测变量是否存在• JavaScript中数组如何遍历• javascript怎么取消点击事件

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网