轮播图

轮播图:

接触jquery也有一段时间了,今天刚好利用轮播图来练练手。博文的前面会介绍一个简单用jquery做轮播图的例子,中间会插入一些关于轮播图更多的思考,在后面会用Javascript的方法来写一个轮播图,最后则是关于jquery和Javascript的比较。
jquery做轮播图的例子:

html部分代码:
在这里插入图片描述
css部分代码:

  • {
    margin: 0;
    padding: 0;
    }
  • {
    margin: 0;
    padding: 0;
    }
    #igs {
    margin: 10px auto;
    width: 700px;
    height: 320px;
    position: relative;
    }
    .ig {
    position: absolute;
    }
    #tabs {
    position: absolute;
    list-style: none;
    background-color: rgba(255,255,255,.5);
    left: 300px;
    bottom: 10px;
    border-radius: 10px;
    padding: 5px 0 5px 5px;
    }
    .tab{
    float: left;
    text-align: center;
    line-height: 20px;
    width: 20px;
    height: 20px;
    cursor: pointer;
    overflow: hidden;
    margin-right: 4px;
    border-radius: 100%;
    background-color: rgb(200,100,150);
    }
    .btn{
    position: absolute;
    color: #fff;
    top: 110px;
    width: 40px;
    height: 100px;
    background-color: rgba(255,255,255,.3);
    font-size: 40px;
    font-weight: bold;
    text-align: center;
    line-height: 100px;
    border-radius: 5px;
    margin: 0 5px;
    }
    .btn2{
    position: absolute;
    right: 0px;
    }
    .btn:hover{
    background-color: rgba(0,0,0,.7);
    }
    js部分代码:
    //定义全局变量和定时器
    var i = 0 ;
    var timer;
    $(document).ready(function(){
    //用jquery方法设置第一张图片显示,其余隐藏
    $(’.ig’).eq(0).show().siblings(’.ig’).hide();
    //调用showTime()函数(轮播函数)
    showTime();
    //当鼠标经过下面的数字时,触发两个事件(鼠标悬停和鼠标离开)
    $(’.tab’).hover(function(){
    //获取当前i的值,并显示,同时还要清除定时器
    i = $(this).index();
    Show();
    clearInterval(timer);
    },function(){
    //
    showTime();
    });
    //鼠标点击左侧的箭头
    $(’.btn1’).click(function(){
    clearInterval(timer);
    if(i == 0){
    i = 5;//注意此时i的值
    }
    i–;
    Show();
    showTime();
    });

//鼠标点击右侧的箭头
$(’.btn2’).click(function(){
clearInterval(timer);
if(i == 4){
i = -1;//注意此时i的值
}
i++;
Show();
showTime();
});
});
//创建一个showTime函数
function showTime(){
//定时器
timer = setInterval(function(){
//调用一个Show()函数
Show();
i++;
//当图片是最后一张的后面时,设置图片为第一张
if(i==5){
i=0;
}
},2000);
}

//创建一个Show函数
function Show(){
//在这里可以用其他jquery的动画
$(’.ig’).eq(i).fadeIn(300).siblings(’.ig’).fadeOut(300);

//给.tab创建一个新的Class为其添加一个新的样式,并且要在css代码中设置该样式
$(’.tab’).eq(i).addClass(‘bg’).siblings(’.tab’).removeClass(‘bg’);
/*

  • css中添加的代码:
  • .bg{ background-color: #f00; }
  • */
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现轮播图图片切换背景根据图片颜色渐变的效果,可以使用CSS和JavaScript来实现。下面是一种实现方式的示例代码: HTML部分: ```html <div class="slideshow"> <div class="slide"> <img src="image1.jpg" alt="Image 1"> </div> <div class="slide"> <img src="image2.jpg" alt="Image 2"> </div> <div class="slide"> <img src="image3.jpg" alt="Image 3"> </div> </div> ``` CSS部分: ```css .slideshow { position: relative; } .slide { position: absolute; top: 0; left: 0; opacity: 0; transition: opacity 1s ease-in-out; } .slide.active { opacity: 1; } .slideshow img { width: 100%; height: auto; } .slideshow::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(to right, rgba(0,0,0,0.8), rgba(0,0,0,0)); z-index: -1; } ``` JavaScript部分: ```javascript const slides = document.querySelectorAll('.slide'); let currentIndex = 0; function changeSlide() { slides[currentIndex].classList.remove('active'); currentIndex = (currentIndex + 1) % slides.length; slides[currentIndex].classList.add('active'); } setInterval(changeSlide, 3000); ``` 上述代码中,通过CSS设置了轮播图容器的样式以及背景渐变效果。JavaScript部分实现了切换轮播图的逻辑,并使用setInterval函数定时调用changeSlide函数来切换图片。每次切换图片时,会为当前显示的图片添加active类,从而使其显示出来。 你可以根据实际需要修改CSS样式和JavaScript代码,来适应你的项目需求。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值