轮播图封装

清早起来打开窗

心情美美哒

我又双叒叕来了!!!

今天分享的是封装轮播图的一种方法

直接上代码!

这是html布局

<div class="autoimg">
        <a href="javascript:;" style="z-index: 1;"><img src="images/lunbo01.jpg" alt="" class="img0"></a>
        <a href="javascript:;"><img src="images/lunbo02.jpg" alt="" class="img0"></a>
        <a href="javascript:;"><img src="images/lunbo03.jpg" alt="" class="img0"></a>
        <a href="javascript:;"><img src="images/lunbo04.jpg" alt="" class="img0"></a>
        <a href="javascript:;"><img src="images/lunbo05.jpg" alt="" class="img0"></a>
        <a href="javascript:;"><img src="images/lunbo06.jpg" alt="" class="img0"></a>
        <a href="javascript:;"><img src="images/lunbo07.jpg" alt="" class="img0"></a>
        <a href="javascript:;"><img src="images/lunbo08.jpg" alt="" class="img0"></a>
        <ul class="u1" style="z-index:9;">
        	<li class="l1" style="background: #B7ABFF"></li>
        	<li class="l1"></li>
        	<li class="l1"></li>
        	<li class="l1"></li>
        	<li class="l1"></li>
        	<li class="l1"></li>
        	<li class="l1"></li>
        	<li class="l1"></li>
        </ul>
        <div class="landr">
            <button class="btn fl" id="turnleft">&lt;</button>
            <button class="btn fr" id="turnright">&gt;</button>
        </div>
</div>

下面是js部分

function auto(box){  //参数传的是轮播图那个盒子的名
    var imgs = box.children("a").children();
    console.log(imgs);//获取图片
    var smcircle = box.children("ul").children();
    console.log(smcircle);//获取小圆点
    var imgs_len = box.children("a").length;
    console.log(imgs_len);//获取轮播图片的个数
    var left = box.children("div").children()[0];
    console.log(left);//获取左按钮
    var right = box.children("div").children()[1];
    console.log(right);//获取右按钮
    var timer = null;//声明一个时间函数
    var i = 0;//声明一个轮播图的下标

    //自动轮播时间函数
    function autolun(index){//轮播函数...注意参数
       imgs.hide().eq(index).fadeIn();
       smcircle.css({background:"#B7ABFF"}).eq(index).css({background:"white"});
    }
    timer = setInterval(function(){//时间函数..多久执行一次轮播函数
          i = i++ > imgs_len-1 ? 0 : i;//三元运算符..如果轮播到最后一张的话就从第一张开始
          autolun(i);
    },1000)

    //鼠标移动到小圆点上时
    smcircle.mouseover(function(){
       var index = $(this).index();
       autolun(index);
    })

    //鼠标移上去停止,移出来继续轮播
    box.hover(function(){
       clearInterval(timer);
    },function(){
       timer = setInterval(function(){
               i = i++ > imgs_len-1 ? 0 : i;
               autolun(i);
       },1000)
    })

    //上一张按钮
    $(left).click(function(){
       i = i-- < 0 ? imgs_len-1 : i;
       imgs.hide().eq(i).fadeIn();
       smcircle.css({background:"#B7ABFF"}).eq(i).css({background:"white"});
    })
    //下一张按钮
    $(right).click(function(){
       i = i++ > imgs_len-1 ? 0 : i;
       imgs.hide().eq(i).fadeIn();
       smcircle.css({background:"#B7ABFF"}).eq(i).css({background:"white"});
    })
}
auto($(".autoimg"));  //调用

好啦,就这些,有事启奏,无事退朝,hhh~

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值