让前端飞

京东商城-广告轮播图

2016-11-17  本文已影响73人  Fancy_WX

广告轮播图对于有开发经验的程序员来说非常的简单,本次贴出代码是为了让初学者能够尽快掌握实现方法,同时,如何使用更少的代码实现这一功能也是考察我们编码水平的重要因素.欢迎各位童鞋们参考交流.
css样式

<style type="text/css"> 
 *{
        margin: 0;padding: 0;
    }   
 #flash{
        position: relative;
        width: 670px;
        height: 220px;
        margin: 150px auto;
        overflow: hidden;
    } 
 #flash .scroll{
        position: absolute;
        width: 670px;
        height: 1000%;
    }   
 #flash .scroll img{
        width: 670px;
        height: 220px;
    }    
#flash .scroll ul li{
        list-style-type: none;
    }    
.control{ 
       cursor: pointer;
        width: 180px; 
       height: 20px;
        position: absolute;
        top: 330px;
        left: 720px;
        z-index: 1;
    }   
 .control li{ 
       font-size: 14px;
        margin-left: 10px;
        text-align: center;
        line-height: 26px;
        float: left;
        list-style-type: none;
        background-color: #cccccc;
        width: 26px;
        height: 26px; 
       border-radius:13px; 
   }    #hover{ 
       background-color: red;
    }
</style>

html+js部分

<body>
<div class="control">
    <ul> 
       <li id="hover">1</li> 
       <li>2</li>
       <li>3</li>
       <li>4</li>
    </ul>
</div>
<div id="flash">
    <div class="scroll">
        <ul>
            <li><img src="image/img_01.jpg"></li>
            <li><img src="image/img_02.jpg"></li>
            <li><img src="image/img_03.jpg"></li>
            <li><img src="image/img_04.jpg"></li>
        </ul>
    </div>
</div>
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript">
    var index = 0;
    var timer = null;
    $('.control ul li').hover(function () {
        if (timer != null){
            window.clearInterval(timer);
        }         
          index = $(this).index();
          $(this).attr('id','hover').siblings('li').removeAttr('id');  
          $('.scroll').animate({top:index*(-220)},300);
            },function () {
                autoPlay();
          });    
    function autoPlay() {
          timer =  window.setInterval(fn,1000);
    }    
    function fn() {
            index ++;
            if (index == 4){ index = 0;}
            $('.control ul li').eq(index).attr('id','hover').siblings('li').removeAttr('id'); 
            $('.scroll').animate({top:index*(-220)},300);
        }
    autoPlay();
</script></body>

说明

上一篇 下一篇

猜你喜欢

热点阅读