网页轮播图效果 需求:每隔一秒钟切换一个图片 案例 分析: ①:获取元素(图片和文字) ②:设置定时器函数 设置一个变量++ 更改图片张数 更改文字信息 ③:处理图片自动复原从头播放 如果图片播放到最后一张就是第9张 则把变量重置为0 注意逻辑代码写到图片和文字变化的前面
时间: 2024-10-23 19:13:46 浏览: 26
嵌入式学习笔记:实验三 每隔一秒钟进行灯的亮灭(定时器方式)
网页轮播图的效果通常通过JavaScript来实现,特别是结合HTML和CSS。以下是满足您需求的一个简单示例:
```html
<div class="carousel">
<img src="image1.jpg" id="slide1" alt="Slide 1">
<img src="image2.jpg" id="slide2" style="display:none;">
<!-- 添加更多的图片... -->
<img src="image9.jpg" id="slide9" style="display:none;">
<p class="caption">文字描述1</p>
<p class="caption" style="display:none;">文字描述2...</p>
<!-- 根据需要添加更多文字 -->
</div>
<script>
let slideIndex = 0;
const slides = document.querySelectorAll('.carousel img');
const captions = document.querySelectorAll('.caption');
function showSlides() {
// 获取当前显示的图片和文字
const currentSlide = slides[slideIndex];
const currentCaption = captions[slideIndex];
// 改变图片和文字
currentSlide.style.display = 'block';
currentCaption.style.display = 'inline';
// 更新索引并切换
slideIndex++;
if (slideIndex > slides.length - 1) { // 到达最后一张
slideIndex = 0; // 重置为0
}
// 获取下一组图片和文字
const nextSlide = slides[slideIndex];
const nextCaption = captions[slideIndex];
// 将它们隐藏,准备下一次切换
nextSlide.style.display = 'none';
nextCaption.style.display = 'none';
// 定时器设置每秒切换
setTimeout(showSlides, 1000);
}
// 开始轮播
showSlides();
</script>
```
在这个例子中,我们首先获取了所有的图片和文字元素,然后定义了一个`showSlides`函数,它会按顺序切换图片和文字。当到达最后一张图片时,我们通过将索引重置回0来实现循环播放。
阅读全文