jquery实现三张图片轮播,并且每张图片停留一秒,第三张图片播完后回到第一张图片重新轮播
时间: 2023-08-17 11:12:11 浏览: 78
好的,下面是一个简单的 jQuery 实现三张图片轮播的代码,每张图片停留一秒,第三张图片播完后回到第一张图片重新轮播:
HTML 代码:
```html
<div class="slideshow">
<img src="image1.jpg">
<img src="image2.jpg">
<img src="image3.jpg">
</div>
```
CSS 代码:
```css
.slideshow {
position: relative;
}
.slideshow img {
position: absolute;
top: 0;
left: 0;
opacity: 0;
transition: opacity 1s;
}
.slideshow img.active {
opacity: 1;
}
```
jQuery 代码:
```javascript
$(function() {
var slideIndex = 0;
var slides = $('.slideshow img');
var slideCount = slides.length;
function nextSlide() {
slides.eq(slideIndex).removeClass('active');
slideIndex = (slideIndex + 1) % slideCount;
slides.eq(slideIndex).addClass('active');
}
slides.eq(0).addClass('active');
setInterval(nextSlide, 1000);
});
```
在这段代码中,我们首先定义了一个变量 `slideIndex` 来表示当前正在展示的图片索引,然后获取了所有的图片元素,并保存在 `slides` 变量中。在 `nextSlide` 函数中,我们先将当前展示的图片移除 `active` 类,然后将 `slideIndex` 增加 1,如果 `slideIndex` 大于等于图片数量,就将其重置为 0,最后给下一张图片添加 `active` 类,通过 CSS 的 transition 属性实现了渐变效果。最后,在页面加载完成后,我们将第一张图片添加 `active` 类,并使用 `setInterval` 函数每隔一秒钟调用一次 `nextSlide` 函数,实现了轮播效果。
阅读全文