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

    一、轮播图之左右切换

      1、html部分

    <div class="carousel">
    		      	<div id="slider" class="swipe" style="visibility:visible;">
    		        	<div class="swipe-wrap">
    		          		<figure>
    		            		<div class="face faceInner">
    		              			<img src="img/find/swip1.jpg"/>
    		            		</div>
    		          		</figure>
    		          		<figure>
    		            		<div class="face faceInner">
    		              			<img src="img/find/swip1.jpg" />
    		            		</div>
    		          		</figure>
    				        <figure>
    				            <div class="face faceInner">
    				              <img src="img/find/swip1.jpg"/>
    				            </div>
    				        </figure>
    		          		<figure>
    		            		<div class="face faceInner">
    		              			<img src="img/find/swip1.jpg"/>
    		            		</div>
    		          		</figure>
    		        	</div>
    		        	<!--圆点-->
    		        	<nav>
    		            	<ul id="position">
    		             		<li class="on"></li>
    		              		<li></li>
    		              		<li></li>
    		              		<li></li>
    		            	</ul>
    		          	</nav>
    		      	</div>     
    		    </div>
    

      

      2、js部分

    var slider = Swipe(document.getElementById('slider'), {
    		    auto: 3000,//轮播时间
    	        continuous: true,//是否连续播放
    	        disableScroll: false,
    	        callback: function(pos) {
    	          var i = bullets.length;
    	          while (i--) {
    	            bullets[i].className = ' ';
    	          }
    	          bullets[pos].className = 'on';
    	        }
          });
          var bullets = document.getElementById('position').getElementsByTagName('li');  

      3、css部分 

    .center {
      position: relative;
       100%;
      top: 1.28rem; 
    }
      .center .carousel {
         100%;
        height: 3rem;
        background: red;
        overflow: hidden; 
    }
        .center .carousel img {
           100%;
          height: 3rem;
     }
    

      4、sass部分

    .center{
        position:relative;
         100%;
        top:1.28rem;    
        .carousel {
             100%;
            height: 3rem;       
            background: red;
            overflow: hidden;
            img{
                 100%;
                height: 3rem;
            }
        }
        
    } 
    

    二、轮播图之上下切换  

      1、html部分

      

    <div id="scroll0" class="contain">
    	  	<ul id="ul">
    	  		<li>111111</li>
    	  		<li>222222</li>
    	  		<li>333333</li>
    	  		<li>444444</li>
    	  		<li>555555</li>
    	  		<li>666666</li>  
    	  		<li>777777</li>
    	  		<li>111111</li>
    	  	</ul>
    	  </div>
    

      2、css部分

    .contain{
    			 100%;
    			height: 50px;
    			overflow: hidden;
    		}
    		li{
    			 100%;
    			height: 50px;
    			font-size: 16px;
    			font-weight: bold;
    			line-height: 50px;
    			text-align: center;
    			background: lightpink;
    		}
    		li:nth-child(odd){
    			background: burlywood;
    		}
    

      3、js部分

    <script type="text/javascript">
    	    var index = 0;
    		var length = $('li').length;
    		var height = $('li').height();
    	    function move(){
    	    	index++;
    	    	if(index == -1){
    				index = length-1;
    			}else if(index == length){
    				index = 0;				                  
                        $('ul').css({'margin-top':0});                                           
    			}
    			$('ul').animate({
    	           	marginTop:-index*height+'px'
    	         },600);
    	    }
    	    function autoMove(){
    			interval = setInterval(function(){
    				move();
    			},3000)
    		}	
    		autoMove();
    		
    	  </script>

     三、全屏轮播

      1、html部分

    <!--轮播图-->
    
    <div class="banner_innerBox" id="banner_innerBox">
      <ul class="banner_ul" id="banner_ul">
        <li class="num0{$i+1}" style="background:url(img/banner/1600-900-200k-3_305-355458_1600x900.jpg) center no-repeat;">
          <a href="{$bannerLi.b_url}" target="_blank"></a>
        </li>
        <li class="num0{$i+1}" style="background:url(img/banner/NSD-2016-1600x900_305-285624_1600x900.jpg) center no-repeat;">
          <a href="{$bannerLi.b_url}" target="_blank"></a>
        </li>
        <li class="num0{$i+1}" style="background:url(img/banner/1600-900-200k-3_305-355458_1600x900.jpg) center no-repeat;">
          <a href="{$bannerLi.b_url}" target="_blank"></a>
        </li>
      </ul>
      <ul class="dianhao_ul" id="dianhao_ul">
        <li class="cur"></li>
        <li class=""></li>
        <li class=""></li>
      </ul>
      <div class='index_bannerBtn Pre'><</div>
      <div class='index_bannerBtn Next'>></div>
    </div>

          2、css部分  

      

    .banner-box{
    	min- 1210px;
        max- 1920px;
    	height: 500px;
    	margin: 0px auto;
    	position: relative;
        overflow: hidden;
        z-index: 1;
    }
    .banner_innerBox{
        left: 0px;
        top: 0px;
         100%;
    }
    .banner_ul {
        position: absolute;
        left: 0px;
        top: 0px;
         100%;
    }
    .banner_innerBox li{
    	float: left;
    }
    .banner_ul li a {
        display: block;
         100%;
        height: 500px;
        z-index: 1;
        top: 0px;
        background: #FFF;
        opacity: 0;
        filter: Alpha(Opacity=0);
    }
    .dianhao_ul {
        position: absolute;
        left: 48%;
        bottom: 10px;
         100%;
        font-size: 0px;
        text-align: center;
        height: 20px;
        z-index: 100;
        margin: 0 auto;
    }
    .dianhao_ul li {
        display: inline-block;
         15px;
        height: 15px;
        /*background: url(../images/liticon.png) no-repeat 0px -320px;*/
        margin-right: 7px;
        cursor: pointer;
        background: #ff5837;
        border-radius: 15px;
    }
    .dianhao_ul li.cur {
        /*background: url(../images/liticon.png) no-repeat 0px -280px;*/
       background: #FFF;
    }
    .index_bannerBtn {
    	position: absolute;
        top: 50%;
        margin-top: -30px;
         38px;
        height: 60px;
        line-height: 60px;
        text-align: center;
        font-size: 30px;
        background: rgba(0, 0, 0, 0.5);
        color: #fff;
        cursor: pointer;
        display: none;
    }
    .banner-box:hover .index_bannerBtn {
        display: block;
    }
    .banner-box .Pre {
        left: 0;
    }
    .banner-box .Next {
        right: 0;
    }  

    3、js部分 

    window.onload= function() {
            	//首页banner效果
    	var banner_ul=$('#banner_ul');
    	banner_ul.append(banner_ul.find('li').clone());
    	var bannerCounts=$('#banner_ul li').length;
    	var banner_lis=banner_ul.find('li');
    	banner_lis.css({
    		'width':100/bannerCounts+'%'
    	});
    	banner_ul.css({
    		'width':bannerCounts*100+'%'
    	});
    	//当前编号
    	var cBIndex=(function(){
    		var curIndex=0;
    		return function(curI){
    				if(curI!==undefined){
    					curIndex=curI;
    				}
    				return curIndex;
    		}
    	})();
    	//点号样式控制
    	function dianhaoCssFn(dh_index){
    		var dh_in=dh_index%(bannerCounts/2);
    		$('#dianhao_ul li').removeClass('cur');
    		$('#dianhao_ul li').eq(dh_in).addClass('cur');
    	}
    	//内部元素摇摆特效
    	function ybFn(flag){
    		var curI=cBIndex();
    		var flyDiv=banner_lis.eq(cBIndex()).find('.flyPic_Box');
    		flyDiv.animate({
    			'left':parseInt(flyDiv.css('left'))+30*flag+'px'
    		},300,function(){
    			flyDiv.animate({
    			'left':parseInt(flyDiv.css('left'))-30*flag+'px'
    			},300);
    		});
    	}
    	function bannerPreFn(){
    		$('#bannerNext_A,#bannerPre_A').unbind('click');
            $('#dianhao_ul').undelegate('mouseenter');
    		if(cBIndex()==0){
    			banner_ul.css('left',-(bannerCounts/2)*100+'%');
    			cBIndex(bannerCounts/2);
    		}
    		banner_ul.animate({
    			'left':-(cBIndex()-1)*100+'%'
    			},500,'swing',function(){
    				cBIndex(cBIndex()-1);
    				dianhaoCssFn(cBIndex());
    				//内部元素摇摆
    				ybFn(1);
    				$('#bannerPre_A').bind('click',bannerPreFn);
    				$('#bannerNext_A').bind('click',bannerNextFn);
                    $('#dianhao_ul').delegate('li','mouseenter',function(){
                        dianhaoAniFn($(this));
                    })
    		});
    	}
    	function bannerNextFn(){
    		$('#bannerNext_A,#bannerPre_A').unbind('click');
            $('#dianhao_ul').undelegate('mouseenter');
    		if(cBIndex()>=bannerCounts-1){
    			banner_ul.css('left',-(bannerCounts/2-1)*100+'%');
    			cBIndex(bannerCounts/2-1);
    		}
    		banner_ul.animate({
    			'left':-(cBIndex()+1)*100+'%'
    			},500,'swing',function(){
    				cBIndex(cBIndex()+1);
    				dianhaoCssFn(cBIndex());
    				//内部元素摇摆
    				ybFn(-1);
    				$('#bannerPre_A').bind('click',bannerPreFn);
    				$('#bannerNext_A').bind('click',bannerNextFn);
                    $('#dianhao_ul').delegate('li','mouseenter',function(){
                        dianhaoAniFn($(this));
                    })
    		});
    	}
    //    点击点号控制飞入飞出
        function dianhaoAniFn(curElment) {
    	    banner_ul.stop();
            var curLiIndex=curElment.index();
            var tarIndex=0;
            if(cBIndex()>(bannerCounts/2-1)){
                tarIndex=curLiIndex+bannerCounts/2;
            }else{
                tarIndex=curLiIndex;
            }
            if(tarIndex-cBIndex()==0){
                return;
            }
            $('#bannerNext_A,#bannerPre_A').unbind('click');
    //        $('#dianhao_ul').undelegate('mouseenter');
            var ybfnFlag=tarIndex>cBIndex()?-1:1;
            banner_ul.animate({
                'left':-tarIndex*100+'%'
            },500,'swing',function(){
                cBIndex(tarIndex);
                dianhaoCssFn(tarIndex);
                //内部元素摇摆
                ybFn(ybfnFlag);
                $('#bannerPre_A').bind('click',bannerPreFn);
                $('#bannerNext_A').bind('click',bannerNextFn);
               /* $('#dianhao_ul').delegate('li','mouseenter',function(){
                    dianhaoAniFn($(this));
                })*/
            });
        }
        $('#dianhao_ul').delegate('li','mouseenter',function(){
    	    dianhaoAniFn($(this));
        })
        var banner_Timer=setInterval(bannerNextFn,5000);
    	//向前按钮
    	$('.Pre').click(function(){
    		bannerPreFn();	
    		clearInterval(banner_Timer);
    	});
    	//向后按钮
    	$('.Next').click(function(){
    		bannerNextFn();		
    	});	
    	
    	//点击左右按钮时定时器清除  离开时添加
    	$('.Pre').mouseleave(function(){
    		banner_Timer=setInterval(bannerNextFn,5000);
    	});
    	//点击圆点时定时器清除  离开时添加 不能同时添加清除定时器
    	$('.dianhao_ul li').mouseenter(function(){
    		clearInterval(banner_Timer);
    	});
    	$('.dianhao_ul li').mouseleave(function(){
    		banner_Timer=setInterval(bannerNextFn,5000);
    	});
        } 
    

      

  • 相关阅读:
    活动的生命周期
    活动
    开始编程前的准备工作
    数组转List
    Word根据模板生成数据
    Excel根据模板生成数据
    php取年份区间
    世界 国家 省份 sql
    相册处理,php中获取一组前缀相同的元素值
    mysql添加字段
  • 原文地址:https://www.cnblogs.com/qing1304197382/p/5541833.html
Copyright © 2011-2022 走看看