以下是一份简单的 banner 自动切换的 JavaScript 代码示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Banner 自动切换</title>
<style>
#banner {
width: 100%;
height: 300px;
position: relative;
}
.banner-item {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
opacity: 0;
transition: opacity 0.5s;
}
.banner-item.active {
opacity: 1;
}
</style>
</head>
<body>
<div id="banner">
<img class="banner-item active" src="image1.jpg" alt="图片 1">
<img class="banner-item" src="image2.jpg" alt="图片 2">
<img class="banner-item" src="image3.jpg" alt="图片 3">
</div>
<script>
const bannerItems = document.querySelectorAll('.banner-item');
let currentIndex = 0;
function switchBanner() {
bannerItems[currentIndex].classList.remove('active');
currentIndex = (currentIndex + 1) % bannerItems.length;
bannerItems[currentIndex].classList.add('active');
}
setInterval(switchBanner, 3000); // 每 3 秒切换一次
</script>
</body>
</html>
基础概念:
querySelectorAll
:用于获取匹配指定 CSS 选择器的所有元素。setInterval
:定时执行指定的函数。优势:
类型: 常见的有基于图片的切换、基于内容的切换等。
应用场景:
可能遇到的问题及解决方法:
setInterval
的时间间隔来解决。onerror
事件处理,例如 onerror="this.src='默认图片路径'"
。领取专属 10元无门槛券
手把手带您无忧上云