• 原生JQ实现图片滑动轮播


    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <title></title>
        <script src="../Scripts/jquery-1.7.2.js"></script>
        <style type="text/css">
            body,div,ul,li,a,img{margin: 0;padding: 0;}
            ul,li{list-style: none;}
            a{text-decoration: none;}
     
            #wrapper{position: relative;margin: 30px auto; 400px;height: 200px;}
            #banner{position:relative; 400px;height: 200px;overflow: hidden;}
            .imgList{position:relative;2000px;height:200px;z-index: 10;overflow: hidden;}
            .imgList li{float:left;display: inline;}
            #prev,
            #next{position: absolute;top:80px;z-index: 20;cursor: pointer;opacity: 0.2;filter:alpha(opacity=20);}
            #prev{left: 10px;}
            #next{right: 10px;}
            #prev:hover,
            #next:hover{opacity: 0.5;filter:alpha(opacity=50);}
            .bg{position: absolute;bottom: 0; 400px;height: 40px;z-index:20;opacity: 0.4;filter:alpha(opacity=40);background: black;}
            .infoList{position: absolute;left: 10px;bottom: 10px;z-index: 30;}
            .infoList li{display: none;}
            .infoList .infoOn{display: inline;color: white;}
            .indexList{position: absolute;right: 10px;bottom: 5px;z-index: 30;}
            .indexList li{float: left;margin-right: 5px;padding: 2px 4px;border: 2px solid black;background: grey;cursor: pointer;}
            .indexList .indexOn{background: red;font-weight: bold;color: white;}
        </style>
    </head>
    <body>
        <div id="wrapper">
            <!-- 最外层部分 -->
            <div id="banner">
                <!-- 轮播部分 -->
                <ul class="imgList">
                    <!-- 图片部分 -->
                    <li><a href="#"><img src="../images/1.jpg" width="400px" height="200px" alt="puss in boots1"></a></li>
                    <li><a href="#"><img src="../images/2.jpg" width="400px" height="200px" alt="puss in boots2"></a></li>
                    <li><a href="#"><img src="../images/3.jpg" width="400px" height="200px" alt="puss in boots3"></a></li>
                    <li><a href="#"><img src="../images/4.jpg" width="400px" height="200px" alt="puss in boots4"></a></li>
                    <li><a href="#"><img src="../images/5.jpg" width="400px" height="200px" alt="puss in boots5"></a></li>
                </ul>
                <img src="../images/qianxleft1.png" width="20px" height="40px" id="prev">
                <img src="../images/qianxr1.png" width="20px" height="40px" id="next">
                <div class="bg"></div> <!-- 图片底部背景层部分-->
                <ul class="infoList">
                    <!-- 图片左下角文字信息部分 -->
                    <li class="infoOn">puss in boots1</li>
                    <li>puss in boots2</li>
                    <li>puss in boots3</li>
                    <li>puss in boots4</li>
                    <li>puss in boots5</li>
                </ul>
                <ul class="indexList">
                    <!-- 图片右下角序号部分 -->
                    <li class="indexOn">1</li>
                    <li>2</li>
                    <li>3</li>
                    <li>4</li>
                    <li>5</li>
                </ul>
            </div>
        </div>
        <script src="../Scripts/jquery-1.7.2.min.js"></script>
        <script type="text/javascript">
            var curIndex = 0,//当前index
            imgLen = $(".imgList li").length;//图片总数
            var autoChange = setInterval(function () {
                if (curIndex < imgLen - 1) {
                    curIndex++;
                } else {
                    curIndex = 0;
                }
                changeTo(curIndex);
            }, 2500);
            //左箭头事件
            $("#prev").hover(function () {
                clearInterval(autoChange);//滑入定时器清除;
            }, function () {
                autoChangeAgain();
            });
            $("#prev").click(function () {
                //根据curIndex处理上一张图片
                curIndex = (curIndex > 0) ? (--curIndex) : (imgLen - 1);
                changeTo(curIndex);
            });
            //右箭头滑入事件
            $("#next").hover(function () {
                //滑入清除定时器
                clearInterval(autoChange);
            }, function () {
                autoChangeAgain();
            });
            //右箭头点击处理事件
            $("#next").click(function () {
                curIndex = (curIndex < imgLen - 1) ? (++curIndex) : 0;
                changeTo(curIndex);
            });
            //清除定时器时候的重置定时器--封装
            function autoChangeAgain() {
                autoChange = setInterval(function () {
                    if (curIndex < imgLen - 1) {
                        curIndex++;
                    } else {
                        curIndex = 0;
                    }
                    //调用变换处理函数
                    changeTo(curIndex);
                }, 2500);
            }
            function changeTo(num) {
                var goLeft = num * 400;
                $(".imgList").animate({ left: "-" + goLeft + "px" }, 500);
                $(".infoList").find("li").removeClass("infoOn").eq(num).addClass("infoOn");
                $(".indexList").find("li").removeClass("indexOn").eq(num).addClass("indexOn");
            }
            //对右下角按钮index进行事件绑定处理等
            $(".indexList").find("li").each(function (item) {
                $(this).hover(function () {
                    clearInterval(autoChange);
                    changeTo(item);
                    curIndex = item;
                }, function () {
                    autoChangeAgain();
                });
            });
        </script>
    </body>
  • 相关阅读:
    eclipse下jsp文件报错解决方法
    使用vscode搭建本地的websocket
    tomcat的首次登录配置
    tomcat配置报错解决方法 The jre_home environment variable is not defined correctly
    cento升级openssl依旧显示老版本
    Centos6安装mysql5.7最新版
    Neutron服务组件
    网络OSI 7层模型
    Kubernetes的核心技术概念和API对象
    Xen 虚拟化技术
  • 原文地址:https://www.cnblogs.com/liumengchen-boke/p/5760661.html
Copyright © 2020-2023  润新知