zoukankan      html  css  js  c++  java
  • javascript 实现图片轮播和点击切换功能

    图片轮播是网页上一个比较常见的功能,下面我们来实现他吧

    原理很简单:

    1:固定的区域,所有的图片重叠,一次只能显示一张图片

    2:通过改变图片的zIndex属性改变显示的图片,就可以达到切换的效果了

    <!-- cycle_pic.html -->
    <!DOCTYPE html>
    <html>
    <head>
        <title>cycle_pic</title>
        <meta charset="utf-8">
        <meta content="text/html" http-equiv="Content-Type">
        <style type="text/css">
            #slideshow_wrapper {
                POSITION: relative;
                PADDING-BOTTOM: 0px;
                BACKGROUND-COLOR: #121212;
                PADDING-LEFT: 0px;
                WIDTH: 650px;
                PADDING-RIGHT: 0px;
                HEIGHT: 400px;
                OVERFLOW: hidden;
                PADDING-TOP: 0px
            }
            #slideshow_footbar {
                Z-INDEX: 5;
                POSITION: absolute;
                FILTER: alpha(opacity=50);
                WIDTH: 100%;
                BOTTOM: 0px;
                HEIGHT: 30px;
                background-color: black;
                opacity:0.5;
            }
            #slideshow_photo {
                POSITION: absolute;
                WIDTH: 100%;
                HEIGHT: 100%;
                CURSOR: pointer
            }
            #slideshow_photo A {
                Z-INDEX: 1;
                BORDER-BOTTOM: 0px;
                POSITION: absolute;
                BORDER-LEFT: 0px;
                MARGIN: 0px;
                DISPLAY: block;
                BORDER-TOP: 0px;
                TOP: 0px;
                BORDER-RIGHT: 0px;
                LEFT: 0px
            }
            #slideshow_footbar .slideshow-bt {
                BACKGROUND-COLOR: #d2d3d4;
                MARGIN: 10px 10px 0px 0px;
                WIDTH: 10px;
                DISPLAY: inline;
                FLOAT: right;
                HEIGHT: 10px;
                FONT-SIZE: 0px
            }
            #slideshow_footbar .bt-on {
                BACKGROUND-COLOR: red;
            }
    </style>
    <script type="text/javascript" charset="utf-8">
        var curIndex=1;//初始换显示第一张
        function slideTo (index) {
            var index = parseInt(index);
            var pic = document.getElementById("slideshow_photo").childNodes;
            for(var i=0;i<pic.length;i++){//改变zIndex属性
                if(pic[i].attributes && pic[i].attributes['index'] && parseInt(pic[i].attributes['index'].value)==index){
                    pic[i].style.zIndex=2;
                    curIndex=index;
                }
                else if(pic[i].attributes && pic[i].attributes['index']) {
                    pic[i].style.zIndex=1;
                }
            }
            var bts = document.getElementsByClassName("slideshow-bt");
            for(var i=0;i<bts.length;i++){//改变显示的效果
                if(parseInt(bts[i].attributes['index'].value)==index){
                    bts[i].className="slideshow-bt bt-on";
                }
                else bts[i].className = "slideshow-bt";
            }
        }
        window.onload = function  () {    //为按钮初始化onclick事件
            var bts = document.getElementsByClassName("slideshow-bt");
            for(var i=0;i<bts.length;i++){
                bts[i].onclick = function  () {
                    slideTo(this.attributes['index'].value);
                }
            }
        }
        setInterval(function  () {//循环切换
            if(curIndex+1>5) curIndex=0;
            slideTo(curIndex+1);
        },2000);
    </script>
    </head>
    <body>
        <div id="slideshow_wrapper">
            <div id="slideshow_photo">
                <a href="#" title="" index="1"><img src="./num/1.jpg" width="650px;" alt="1" border="0px;"></a>
                <a href="#" title="" index="2"><img src="./num/2.jpg" width="650px;" alt="2" border="0px;"></a>
                <a href="#" title="" index="3"><img src="./num/3.jpg" width="650px;" alt="3" border="0px;"></a>
                <a href="#" title="" index="4"><img src="./num/4.jpg" width="650px;" alt="4" border="0px;"></a>
                <a href="#" title="" index="5"><img src="./num/5.jpg" width="650px;" alt="5" border="0px;"></a>
            </div>
            <div id="slideshow_footbar">    
                <div class="slideshow-bt" index="5"></div>
                <div class="slideshow-bt" index="4"></div>
                <div class="slideshow-bt" index="3"></div>
                <div class="slideshow-bt" index="2"></div>
                <div class="slideshow-bt" index="1"></div>
            </div>
        </div>
    </body>
    </html>
  • 相关阅读:
    CSS
    CSS
    HTML
    HTML
    HTML
    ubuntu server安装的一些坑
    Haproxy 开启日志记录
    nginx反向代理时保持长连接
    最简单的tomcat安装部署
    nginx的安装部署以及使用
  • 原文地址:https://www.cnblogs.com/qwj-sysu/p/4080797.html
Copyright © 2011-2022 走看看