zoukankan      html  css  js  c++  java
  • 基于JQuery的渐隐渐现轮播

     1 <div id="ads">
     2     <div>
     3       <!--轮播图片-->
     4       <ul>
     5         <li><a  href="#" target="_blank"><img alt="" src="" /></a></li>
     6         <li><a  href="#" target="_blank"><img alt="" src="" /></a></li>
     7         <li><a  href="#" target="_blank"><img alt="" src="" /></a></li>
     8         <li><a  href="#" target="_blank"><img alt="" src="" /></a></li>
     9       </ul>
    10       <!--左右切换箭头-->
    11       <div>
    12         <div><img alt="" src="" /></div>
    13         <div><img alt="" src="" /></div>
    14       </div>
    15     </div>
    16   <!--导航小圆点-->
    17     <ul>
    18         <li class="focus"></li>
    19         <li></li>
    20     <li></li>
    21         <li class="lastLi"></li>
    22     </ul>
    23 </div>
     1 li{display: inline-block; float: left;}
     2   .lastLi{margin-right: 0 !important;}
     3   #ads{position: relative; margin-bottom:33px; width:100%; min-width: 1210px;height:512px;overflow: hidden;z-index:0;}
     4   #ads>div{position:relative; margin:0 auto; width:inherit; min-width:1210px; height:inherit;}
     5   #ads>div>ul>li{display:none; position: absolute;top:0;left:50%;margin-left:-960px; z-index:1;}
     6   #ads>div>ul>li:first-child{display:block;}
     7   #ads>div>div{position:relative; width:1210px; height:290px; margin:0 auto;}
     8   #ads>div>div>div{position:absolute; display:none; top:222px; right:0; width:67px; height:67px; cursor:pointer;z-index:3; }
     9   #ads>div>div>div:first-child{left:0;}
    10   #ads>ul{
    11     position: absolute;
    12     top: 480px;
    13     left: 50%;
    14     margin:0 0 0 -26px;
    15     padding: 0;
    16     z-index: 11;
    17   }
    18   #ads>ul>li{
    19     margin-right: 8px;
    20     padding: 0;
    21     width: 9px;
    22     height: 9px;
    23     border-radius: 10px;
    24     cursor: pointer;
    25     background:url() 0 0 no-repeat;
    26   }
    27   #ads>ul>li.focus{
    28     background:url() 0 -9px no-repeat;
    29   }
     1 ;(function(){
     2     var setting = {
     3             $ads:$("#ads"),
     4             $adsContent: $("#ads>div>ul>li"),//大广告
     5             $arrows: $("#ads>div>div>div"),//切换箭头
     6             $markPoints: $("#ads>ul>li"),//小圆点
     7             HIDETIME:400,//消失时间
     8             SHOWTIME:800,//出现时间
     9             INTERVALTIME:4000,//间隔时间 
    10             animaChoice:0//0代表渐隐渐现,1代表滚动
    11         },
    12         currentIndex=0,
    13         len = setting.$adsContent.length,
    14         _setInterval=setInterval(autoPlay,setting.INTERVALTIME);
    15 
    16     setting.$ads.hover(function(){
    17         setting.$arrows.fadeIn("fast").css("display","inline-block");
    18     },function(){
    19         setting.$arrows.fadeOut("fast");
    20     });
    21    
    22     //向右切换
    23     function autoPlay(){
    24         switchAds(0,false);
    25     }
    26 
    27     //点击箭头切换
    28     setting.$arrows.each(function(index){
    29         if(index==0){
    30             $(this).on("click",function(){
    31                 switchAds(1,true);
    32             });
    33         }
    34         else{
    35             $(this).on("click",function(){
    36                 switchAds(0,true);
    37             });
    38         }
    39     })
    40 
    41     //点击小圆点切换
    42     setting.$markPoints.each(function(index){
    43         $(this).on("click",function(){
    44             switchAds(2,true,index);
    45         })
    46     })
    47 
    48     //切换
    49     function switchAds(clickStatus,beClicked,index){
    50         if(beClicked) setting.$adsContent.stop(false,true);
    51         if(!setting.$adsContent.is(":animated")){
    52             if(beClicked) clearInterval(_setInterval);
    53             animate(setting.$adsContent.eq(currentIndex),false,setting.animaChoice);
    54             switch(clickStatus){
    55                 case 0://选择下一张
    56                   currentIndex++;
    57                   break;
    58                 case 1://选择前一张
    59                   currentIndex--;
    60                   break;
    61                 case 2://选择被点击的
    62                   currentIndex=index;
    63                   break;
    64                 default:
    65                   break;
    66             }
    67             if(currentIndex==len) currentIndex=0;
    68             else if(currentIndex==-1) currentIndex=len-1;
    69             //console.log(currentIndex);
    70             animate(setting.$adsContent.eq(currentIndex),true,setting.animaChoice);
    71             markDot(setting.$markPoints.eq(currentIndex));
    72             if(beClicked) _setInterval=setInterval(autoPlay,setting.INTERVALTIME);
    73         }
    74     }
    75 
    76     //负责标记小圆点
    77     function markDot($target){
    78         $target.addClass("focus").siblings().removeClass("focus");
    79     }
    80 
    81     //负责动画效果
    82     function animate($target,show,animaChoice){
    83         switch(animaChoice){
    84             case 0:
    85               if(show) $target.fadeIn(setting.SHOWTIME);
    86               else $target.fadeOut(setting.SHOWTIME);
    87               break;
    88             case 1:
    89               if(show) ;
    90               else ;
    91               break;
    92             default:
    93               break;
    94         }
    95     }
    96 
    97 })()
  • 相关阅读:
    html Table实现表头固定
    Asp.net ORA-12154: TNS: 无法解析指定的连接标识符
    VS加载项目时报错 尚未配置为Web项目XXXX指定的本地IIS
    Sqlserver 导出insert插入语句
    RRAS
    MVC实例应用模式
    MVC概述
    23种设计模式
    XXX系统质量属性
    大型网站架构读后感
  • 原文地址:https://www.cnblogs.com/zhengtulym/p/4860611.html
Copyright © 2011-2022 走看看