zoukankan      html  css  js  c++  java
  • JQ_图片轮播

    上次PO了一个Javascript实现的图片轮播。即使做了函数封装,代码量还是有点冗余。复用率还是不够高。

    下面用JQ实现一下图片轮播

    html:

    <div class="content">
            <div class="img_change">
    
                <div id="img_container" class="img_container"></div>
                
                <div class="change_btn">
                    <ul id="btn_container"></ul>
                </div>            
            </div>
        </div>
    html代码

    css代码:

     1 *{
     2     padding: 0;
     3     margin:0;
     4     box-sizing: border-box;
     5 }
     6 .content{
     7     width: 700px;
     8     margin:100px auto;
     9 }
    10 .img_change{
    11     position: relative;
    12     width: 731px;
    13 }
    14 .img_container{
    15     width: 731px;
    16     height: 300px;
    17 }
    18 .img_container img{
    19     position: absolute;
    20 }
    21 .change_btn{
    22     margin: 0 auto;
    23     padding: 10px;
    24     background: rgba(0,0,0,0.4);
    25 }
    26 .change_btn ul{
    27     list-style: none;
    28     text-align: center;
    29 }
    30 .change_btn>ul>li{
    31     display: inline-block;
    32     width:25px;
    33     height: 10px;
    34     background: #1e443f;
    35     cursor: pointer;
    36     opacity: 0.8;
    37     margin-right: 10px;
    38 }
    39 .active{
    40     background: #d7d7d7 !important;
    41 }
    css代码

    jq代码:

     1 $(function(){
     2     imgArr = ['banner-1.png','banner-2.png','banner-3.png'];
     3 
     4     initData();
     5 
     6     startChange();
     7 
     8     $("#btn_container li").bind("click",clickBtn)
     9 })
    10 
    11 //初始化
    12 function initData(){
    13     var len = imgArr.length;
    14 
    15     for(var i=0;i<len;i++){
    16         
    17         $("#img_container").append("<img src='./images/"+imgArr[i]+"'>");
    18         $("#btn_container").append("<li data-index='"+i+"'></li>");
    19     }
    20 
    21     $("#img_container img:not(:first)").hide();
    22     $("#btn_container li:first").addClass("active");
    23 }
    24 
    25 //轮播图片
    26 var timer = null;
    27 var cur = 0;
    28 function startChange(time){
    29     clearInterval(timer);
    30     var speedTime = time || 4000;
    31 
    32     timer = setInterval(function(){
    33         var next = cur+1 == imgArr.length ? 0:cur+1;
    34 
    35         changeImg(cur,next);
    36 
    37         cur = next;
    38 
    39     },speedTime)
    40 }
    41 
    42 //鼠标点击触发函数
    43 function clickBtn(){
    44     clearInterval(timer);
    45     var that = $(this);
    46     var next = parseInt(that.attr("data-index"));
    47 
    48     changeImg(cur,next);
    49     startChange();
    50     
    51     cur = next;
    52 }
    53 
    54 //改变显示的内容
    55 function changeImg(cur,next){
    56     $("#img_container img").eq(cur).fadeOut("2000");
    57     $("#btn_container li").eq(cur).removeClass("active");
    58 
    59     $("#img_container img").eq(next).fadeIn("2000");
    60     $("#btn_container li").eq(next).addClass("active");
    61 }

    效果和JS实现的效果大同小异(下面是JS的图片轮播)

    http://www.cnblogs.com/adelina-blog/p/5885130.html

    就不PO图片上来了

    以上内容,如有错误请指出,不甚感激。

  • 相关阅读:
    虚函数和纯虚函数
    MS CRM 2011中PartyList类型字段的实例化
    MS CRM 2011的自定义与开发(12)——表单脚本扩展开发(4)
    MS CRM 2011的自定义与开发(12)——表单脚本扩展开发(2)
    MS CRM 2011的自定义和开发(10)——CRM web服务介绍(第二部分)——IOrganizationService(二)
    MS CRM 2011 SDK 5.08已经发布
    MS CRM 2011 Q2的一些更新
    最近很忙
    Microsoft Dynamics CRM 2011最近的一些更新
    补一篇,Update Rollup 12 终于发布了
  • 原文地址:https://www.cnblogs.com/adelina-blog/p/5917095.html
Copyright © 2011-2022 走看看