此示例使用 HTML + Canvas 實現滑動拼圖驗證碼。Canvas繪制帶隨機缺口的背景,獨立滑塊按鈕監聽滑鼠/觸摸拖拽,實時將滑塊位置映射到Ca...
自動圖片輪播:使用setInterval函數定期調用nextImage函數
本文摘要
這是一個自動播放的圖片輪播器示例,使用HTML、CSS和JavaScript構建。它通過`setInterval`定期調用`nextImage`函數來實現自動換圖,同時提供前一張、後一張、開始和停止的按鈕控制。頁面加載後自動開始輪播,圖片列表和換圖邏輯通過JavaScript管理。
自動播放的圖片輪播器,我們需要使用`setInterval`函數來定期調用`nextImage`函數。下面是一個代碼示例,並解釋了代碼的意思:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>自動播放的圖片輪播器</title>
<style>
/* 樣式保持不變 */
#image-carousel {
position: relative;
width: 500px;
height: 300px;
overflow: hidden;
}
#carousel-image {
position: absolute;
width: 100%;
height: 100%;
object-fit: cover;
}
</style>
</head>
<body>
<div id="image-carousel">
<img id="carousel-image" src="https://mippu.qunapu.com/upload/2024/04/202404281714258320954306.jpg" alt="Image 1">
</div>
<button onclick="prevImage()">Previous</button>
<button onclick="nextImage()">Next</button>
<button onclick="stopCarousel()">Stop</button>
<button onclick="startCarousel()">Start</button>
<script>
var imageIndex = 1;
var images = ['https://mippu.qunapu.com/upload/2024/04/202404281714258320954306.jpg',
'https://mippu.qunapu.com/upload/2024/04/202404301714431073659133.jpg',
'https://mippu.qunapu.com/upload/2024/04/202404281714258320954306.jpg']; // 圖片列表
var carouselInterval; // 用於存儲setInterval返回的ID
function changeImage(imgSrc) {
document.getElementById('carousel-image').src = imgSrc;
}
function nextImage() {
imageIndex++;
if (imageIndex === images.length) {
imageIndex = 0;
}
changeImage(images[imageIndex]);
}
function prevImage() {
imageIndex--;
if (imageIndex < 0) {
imageIndex = images.length - 1;
}
changeImage(images[imageIndex]);
}
function startCarousel() {
// 使用setInterval每3秒調用一次nextImage函數
carouselInterval = setInterval(nextImage, 3000);
}
function stopCarousel() {
// 使用clearInterval停止輪播
clearInterval(carouselInterval);
}
// 頁面加載完成後開始輪播
window.onload = function() {
startCarousel();
};
</script>
</body>
</html>代碼解釋:

1. HTML部分:
- 添加了兩個新的按鈕:“Stop”和“Start”,用於控制輪播的停止和開始。
- 輪播容器`#image-carousel`和圖片`#carousel-image`的樣式被移到了`<style>`標簽中,以保持代碼整潔。
2. avaScript部分:
- 添加了`carouselInterval`變量,用於存儲`setInterval`返回的ID,以便後續可以清除它。
- `startCarousel`函數使用`setInterval`來每3秒調用一次`nextImage`函數,從而實現自動輪播。
- `stopCarousel`函數使用`clearInterval`來停止輪播。
- 在`window.onload`事件中調用`startCarousel`函數,以確保在頁面加載完成後立即開始輪播。
現在,當你打開這個HTML文件時,圖片輪播器會自動開始播放,並且你可以使用“Previous”和“Next”按鈕手動控制圖片,或者使用“Stop”和“Start”按鈕來控制輪播的停止和開始。
標籤: 函數 圖片 imageIndex 輪播 setInterval upload
相關文章
