zoukankan      html  css  js  c++  java
  • JQuery实现图片轮播效果源码

     ======================整体结构========================

    <div class="banner">
        <ul class="banner-imgs">
            <li class="banner-img">
                <a href="#"><img src="#" alt="" /></a>
            </li>
            <li class="banner-img">
                <a href="#"><img src="#" alt="" /></a>
            </li>
            <li class="banner-img">
                <a href="#"><img src="#" alt="" /></a>
            </li>
            <li class="banner-img">
                <a href="#"><img src="#" alt="" /></a>
            </li>
            <li class="banner-img">
                <a href="#"><img src="#" alt="" /></a>
            </li>
        </ul>
        <div class="banner-btns">
            <button class="banner-btn-left">&lt;</button>
            <button class="banner-btn-right">&gt;</button>
        </div>
        <ul class="banner-items">
            <li class="banner-item"></li>
            <li class="banner-item"></li>
            <li class="banner-item"></li>
            <li class="banner-item"></li>
            <li class="banner-item"></li>
        </ul>
    </div>

     ======================滚动轮播========================

            <style type="text/css">
                body {
                    background: #424242;
                }
                
                * {
                    padding: 0px;
                    border: 0px;
                    margin: 0px;
                    outline: none;
                    list-style: none;
                    text-decoration: none;
                }
                
                .banner {
                    /*此处调整尺寸*/
                    width: 800px;
                    height: 378px;
                    margin: 100px auto;
                    position: relative;
                    overflow: hidden;
                }
                
                .banner .banner-imgs {
                    width: 500%;
                    height: 100%;
                    position: absolute;
                }
                
                .banner .banner-imgs .banner-img {
                    width: 20%;
                    height: 100%;
                    float: left;
                }
                
                .banner .banner-imgs .banner-img img {
                    width: 100%;
                    height: 100%;
                }
                
                .banner .banner-btns {
                    width: 100%;
                    position: absolute;
                    top: 45%;
                }
                
                .banner .banner-btns button {
                    padding: 5px;
                    background: rgba(0, 0, 0, 0.4);
                    text-align: center;
                    color: white;
                    font-size: 34px;
                    font-family: "微软雅黑";
                }
                
                .banner .banner-btns button:hover {
                    background: rgba(0, 0, 0, 0.5);
                }
                
                .banner .banner-btns .banner-btn-left {
                    float: left;
                }
                
                .banner .banner-btns .banner-btn-right {
                    float: right;
                }
                
                .banner .banner-items {
                    width: 100px;
                    position: absolute;
                    /*设置按钮位置*/
                    top: 10%;
                    right: 5%;
                }
                
                .banner .banner-items .banner-item {
                    width: 10px;
                    height: 10px;
                    margin: 5px;
                    background: white;
                    opacity: 0.6;
                    border-radius: 5px;
                    box-shadow: 0 0 5px black;
                    cursor: pointer;
                    float: left;
                }
            </style>
    滚动连播样式
            <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
            <script type="text/javascript">
                $(document).ready(function() {
                    var $banner = $(".banner .banner-imgs");
                    var $imgs = $(".banner .banner-imgs .banner-img");
                    var $btnL = $(".banner .banner-btns .banner-btn-left");
                    var $btnR = $(".banner .banner-btns .banner-btn-right");
                    var $items = $(".banner .banner-items .banner-item");
                    var index = 0;
    
                    $items.eq(0).css("opacity", "1");
    
                    $btnL.click(function() {
                        imgAnimator(false);
                    });
    
                    $btnR.click(function() {
                        imgAnimator(true);
                    });
    
                    $items.click(function() {
                        imgAnimator(true, $items.index($(this)));
                    });
    
                    function imgAnimator(toNext, select) {
                        var temp = 0;
                        if(select != null) {
                            temp = select;
                        } else if(toNext == true) {
                            temp = ($imgs.length + index + 1) % $imgs.length;
                        } else {
                            temp = ($imgs.length + index - 1) % $imgs.length;
                        }
                        var position = temp * -($banner.outerWidth() / 5);
                        $banner.stop();
                        $banner.animate({
                            "left": position + "px"
                        }, "fast", function() {
                            index = temp;
                            $items.css("opacity", "0.5");
                            $items.eq(index).css("opacity", "1");
                        });
                    }
    
                });
    滚动连播效果
    <!doctype html>
    <html>
    
        <head>
            <meta charset="utf-8">
            <title>滚动轮播</title>
            <style type="text/css">
                body {
                    background: #424242;
                }
                
                * {
                    padding: 0px;
                    border: 0px;
                    margin: 0px;
                    outline: none;
                    list-style: none;
                    text-decoration: none;
                }
                
                .banner {
                    /*此处调整尺寸*/
                    width: 800px;
                    height: 378px;
                    margin: 100px auto;
                    position: relative;
                    overflow: hidden;
                }
                
                .banner .banner-imgs {
                    width: 500%;
                    height: 100%;
                    position: absolute;
                }
                
                .banner .banner-imgs .banner-img {
                    width: 20%;
                    height: 100%;
                    float: left;
                }
                
                .banner .banner-imgs .banner-img img {
                    width: 100%;
                    height: 100%;
                }
                
                .banner .banner-btns {
                    width: 100%;
                    position: absolute;
                    top: 45%;
                }
                
                .banner .banner-btns button {
                    padding: 5px;
                    background: rgba(0, 0, 0, 0.4);
                    text-align: center;
                    color: white;
                    font-size: 34px;
                    font-family: "微软雅黑";
                }
                
                .banner .banner-btns button:hover {
                    background: rgba(0, 0, 0, 0.5);
                }
                
                .banner .banner-btns .banner-btn-left {
                    float: left;
                }
                
                .banner .banner-btns .banner-btn-right {
                    float: right;
                }
                
                .banner .banner-items {
                    width: 100px;
                    position: absolute;
                    /*设置按钮位置*/
                    top: 10%;
                    right: 5%;
                }
                
                .banner .banner-items .banner-item {
                    width: 10px;
                    height: 10px;
                    margin: 5px;
                    background: white;
                    opacity: 0.6;
                    border-radius: 5px;
                    box-shadow: 0 0 5px black;
                    cursor: pointer;
                    float: left;
                }
            </style>
            <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
            <script type="text/javascript">
                $(document).ready(function() {
                    var $banner = $(".banner .banner-imgs");
                    var $imgs = $(".banner .banner-imgs .banner-img");
                    var $btnL = $(".banner .banner-btns .banner-btn-left");
                    var $btnR = $(".banner .banner-btns .banner-btn-right");
                    var $items = $(".banner .banner-items .banner-item");
                    var index = 0;
    
                    $items.eq(0).css("opacity", "1");
    
                    $btnL.click(function() {
                        imgAnimator(false);
                    });
    
                    $btnR.click(function() {
                        imgAnimator(true);
                    });
    
                    $items.click(function() {
                        imgAnimator(true, $items.index($(this)));
                    });
    
                    function imgAnimator(toNext, select) {
                        var temp = 0;
                        if(select != null) {
                            temp = select;
                        } else if(toNext == true) {
                            temp = ($imgs.length + index + 1) % $imgs.length;
                        } else {
                            temp = ($imgs.length + index - 1) % $imgs.length;
                        }
                        var position = temp * -($banner.outerWidth() / 5);
                        $banner.stop();
                        $banner.animate({
                            "left": position + "px"
                        }, "fast", function() {
                            index = temp;
                            $items.css("opacity", "0.5");
                            $items.eq(index).css("opacity", "1");
                        });
                    }
    
                });
            </script>
        </head>
    
        <body>
            <div class="banner">
                <ul class="banner-imgs">
                    <li class="banner-img">
                        <a href="#"><img src="http://c1.mifile.cn/f/i/15/item/buyphone/mi5-shenruliaojie.jpg" alt="" /></a>
                    </li>
                    <li class="banner-img">
                        <a href="#"><img src="http://c1.mifile.cn/f/i/15/item/buyphone-mimax/shenruliaojie.jpg" alt="" /></a>
                    </li>
                    <li class="banner-img">
                        <a href="#"><img src="http://c1.mifile.cn/f/i/15/item/buyphone/note3-shenruliaojie.jpg" alt="" /></a>
                    </li>
                    <li class="banner-img">
                        <a href="#"><img src="http://c1.mifile.cn/f/i/15/item/buyphone/hongmi3s-shenruliaojie.jpg" alt="" /></a>
                    </li>
                    <li class="banner-img">
                        <a href="#"><img src="http://c1.mifile.cn/f/i/15/item/buyphone/hongmi3x-shenruliaojie.jpg" alt="" /></a>
                    </li>
                </ul>
                <div class="banner-btns">
                    <button class="banner-btn-left">&lt;</button>
                    <button class="banner-btn-right">&gt;</button>
                </div>
                <ul class="banner-items">
                    <li class="banner-item"></li>
                    <li class="banner-item"></li>
                    <li class="banner-item"></li>
                    <li class="banner-item"></li>
                    <li class="banner-item"></li>
                </ul>
            </div>
        </body>
    
    </html>
    滚动连播完整代码

     ======================渐变轮播========================

            <style type="text/css">
                body {
                    background: #424242;
                }
                
                * {
                    padding: 0px;
                    border: 0px;
                    margin: 0px;
                    outline: none;
                    list-style: none;
                    text-decoration: none;
                }
                
                .banner {
                    /*此处调整尺寸*/
                    width: 800px;
                    height: 378px;
                    margin: 100px auto;
                    position: relative;
                    /*overflow: hidden;*/
                }
                
                .banner .banner-imgs {
                    width: 100%;
                    height: 100%;
                    background: white;
                }
                
                .banner .banner-imgs .banner-img {
                    width: 100%;
                    height: 100%;
                    position: absolute;
                    display: none;
                    z-index: 0;
                    opacity: 0;
                }
                
                .banner .banner-imgs .banner-img img {
                    width: 100%;
                    height: 100%;
                }
                
                .banner .banner-btns {
                    width: 100%;
                    z-index: 50;
                    position: absolute;
                    top: 45%;
                }
                
                .banner .banner-btns button {
                    padding: 5px;
                    background: rgba(0, 0, 0, 0.4);
                    text-align: center;
                    color: white;
                    font-size: 34px;
                    font-family: "微软雅黑";
                }
                
                .banner .banner-btns button:hover {
                    background: rgba(0, 0, 0, 0.5);
                }
                
                .banner .banner-btns .banner-btn-left {
                    float: left;
                }
                
                .banner .banner-btns .banner-btn-right {
                    float: right;
                }
                
                .banner .banner-items {
                    width: 100px;
                    z-index: 50;
                    position: absolute;
                    /*设置按钮位置*/
                    top: 10%;
                    right: 5%;
                }
                
                .banner .banner-items .banner-item {
                    width: 10px;
                    height: 10px;
                    margin: 5px;
                    background: white;
                    opacity: 0.6;
                    border-radius: 5px;
                    box-shadow: 0 0 5px black;
                    cursor: pointer;
                    float: left;
                }
            </style>
    渐变连播样式
            <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
            <script type="text/javascript">
                $(document).ready(function() {
                    var $banner = $(".banner .banner-imgs");
                    var $imgs = $(".banner .banner-imgs .banner-img");
                    var $btnL = $(".banner .banner-btns .banner-btn-left");
                    var $btnR = $(".banner .banner-btns .banner-btn-right");
                    var $items = $(".banner .banner-items .banner-item");
                    var lastIndex = 0;
                    var showIndex = 0;
    
                    $imgs.eq(0).css("opacity", "1");
                    $imgs.eq(0).css("z-index", "20");
                    $imgs.eq(0).css("display", "block");
                    $items.eq(0).css("opacity", "1");
    
                    $btnL.click(function() {
                        imgAnimator(false);
                    });
    
                    $btnR.click(function() {
                        imgAnimator(true);
                    });
    
                    $items.click(function() {
                        imgAnimator(true, $items.index($(this)));
                    });
    
                    function imgAnimator(toNext, select) {
    
                        if(select != null) {
                            showIndex = select;
                        } else if(toNext == true) {
                            showIndex = ($imgs.length + lastIndex + 1) % $imgs.length;
                        } else {
                            showIndex = ($imgs.length + lastIndex - 1) % $imgs.length;
                        }
    
                        $items.css("opacity", "0.5");
                        $items.eq(showIndex).css("opacity", "1");
    
                        var $hideImg = $imgs.eq(lastIndex);
                        var $showImg = $imgs.eq(showIndex);
                        $showImg.css("display", "block");
                        $hideImg.css("z-index", 10);
                        $showImg.css("z-index", 20);
                        $showImg.animate({
                            "opacity": "1"
                        }, "slow", function() {
                            $hideImg.css({
                                "z-index": "0",
                                "display": "none",
                                "opacity": "0"
                            });
                        })
                        lastIndex = showIndex;
                    }
                });
            </script>
    渐变轮播效果
    <!doctype html>
    <html>
    
        <head>
            <meta charset="utf-8">
            <title>渐变轮播</title>
            <style type="text/css">
                body {
                    background: #424242;
                }
                
                * {
                    padding: 0px;
                    border: 0px;
                    margin: 0px;
                    outline: none;
                    list-style: none;
                    text-decoration: none;
                }
                
                .banner {
                    /*此处调整尺寸*/
                    width: 800px;
                    height: 378px;
                    margin: 100px auto;
                    position: relative;
                    /*overflow: hidden;*/
                }
                
                .banner .banner-imgs {
                    width: 100%;
                    height: 100%;
                    background: white;
                }
                
                .banner .banner-imgs .banner-img {
                    width: 100%;
                    height: 100%;
                    position: absolute;
                    display: none;
                    z-index: 0;
                    opacity: 0;
                }
                
                .banner .banner-imgs .banner-img img {
                    width: 100%;
                    height: 100%;
                }
                
                .banner .banner-btns {
                    width: 100%;
                    z-index: 50;
                    position: absolute;
                    top: 45%;
                }
                
                .banner .banner-btns button {
                    padding: 5px;
                    background: rgba(0, 0, 0, 0.4);
                    text-align: center;
                    color: white;
                    font-size: 34px;
                    font-family: "微软雅黑";
                }
                
                .banner .banner-btns button:hover {
                    background: rgba(0, 0, 0, 0.5);
                }
                
                .banner .banner-btns .banner-btn-left {
                    float: left;
                }
                
                .banner .banner-btns .banner-btn-right {
                    float: right;
                }
                
                .banner .banner-items {
                    width: 100px;
                    z-index: 50;
                    position: absolute;
                    /*设置按钮位置*/
                    top: 10%;
                    right: 5%;
                }
                
                .banner .banner-items .banner-item {
                    width: 10px;
                    height: 10px;
                    margin: 5px;
                    background: white;
                    opacity: 0.6;
                    border-radius: 5px;
                    box-shadow: 0 0 5px black;
                    cursor: pointer;
                    float: left;
                }
            </style>
            <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
            <script type="text/javascript">
                $(document).ready(function() {
                    var $banner = $(".banner .banner-imgs");
                    var $imgs = $(".banner .banner-imgs .banner-img");
                    var $btnL = $(".banner .banner-btns .banner-btn-left");
                    var $btnR = $(".banner .banner-btns .banner-btn-right");
                    var $items = $(".banner .banner-items .banner-item");
                    var lastIndex = 0;
                    var showIndex = 0;
    
                    $imgs.eq(0).css("opacity", "1");
                    $imgs.eq(0).css("z-index", "20");
                    $imgs.eq(0).css("display", "block");
                    $items.eq(0).css("opacity", "1");
    
                    $btnL.click(function() {
                        imgAnimator(false);
                    });
    
                    $btnR.click(function() {
                        imgAnimator(true);
                    });
    
                    $items.click(function() {
                        imgAnimator(true, $items.index($(this)));
                    });
    
                    function imgAnimator(toNext, select) {
    
                        if(select != null) {
                            showIndex = select;
                        } else if(toNext == true) {
                            showIndex = ($imgs.length + lastIndex + 1) % $imgs.length;
                        } else {
                            showIndex = ($imgs.length + lastIndex - 1) % $imgs.length;
                        }
    
                        $items.css("opacity", "0.5");
                        $items.eq(showIndex).css("opacity", "1");
    
                        var $hideImg = $imgs.eq(lastIndex);
                        var $showImg = $imgs.eq(showIndex);
                        $showImg.css("display", "block");
                        $hideImg.css("z-index", 10);
                        $showImg.css("z-index", 20);
                        $showImg.animate({
                            "opacity": "1"
                        }, "slow", function() {
                            $hideImg.css({
                                "z-index": "0",
                                "display": "none",
                                "opacity": "0"
                            });
                        })
                        lastIndex = showIndex;
                    }
                });
            </script>
        </head>
    
        <body>
            <div class="banner">
                <ul class="banner-imgs">
                    <li class="banner-img">
                        <a href="#"><img src="http://c1.mifile.cn/f/i/15/item/buyphone/mi5-shenruliaojie.jpg" alt="" /></a>
                    </li>
                    <li class="banner-img">
                        <a href="#"><img src="http://c1.mifile.cn/f/i/15/item/buyphone-mimax/shenruliaojie.jpg" alt="" /></a>
                    </li>
                    <li class="banner-img">
                        <a href="#"><img src="http://c1.mifile.cn/f/i/15/item/buyphone/note3-shenruliaojie.jpg" alt="" /></a>
                    </li>
                    <li class="banner-img">
                        <a href="#"><img src="http://c1.mifile.cn/f/i/15/item/buyphone/hongmi3s-shenruliaojie.jpg" alt="" /></a>
                    </li>
                    <li class="banner-img">
                        <a href="#"><img src="http://c1.mifile.cn/f/i/15/item/buyphone/hongmi3x-shenruliaojie.jpg" alt="" /></a>
                    </li>
                </ul>
                <div class="banner-btns">
                    <button class="banner-btn-left">&lt;</button>
                    <button class="banner-btn-right">&gt;</button>
                </div>
                <ul class="banner-items">
                    <li class="banner-item"></li>
                    <li class="banner-item"></li>
                    <li class="banner-item"></li>
                    <li class="banner-item"></li>
                    <li class="banner-item"></li>
                </ul>
            </div>
        </body>
    
    </html>
    渐变轮播完整代码
  • 相关阅读:
    有趣的机器学习视频-第四章.强化学习
    有趣的机器学习视频-第五章.进化算法
    有趣的机器学习视频-第二章.人工神经网络
    有趣的机器学习视频-第三章.如何评价/检验神经网络
    有趣的机器学习视频-第一章.什么是机器学习
    AlphaStar
    AlphaZero
    AlphaGo分析
    nfs自动挂载
    postfix简单记录
  • 原文地址:https://www.cnblogs.com/woider/p/5808893.html
Copyright © 2011-2022 走看看