焦点图轮播是一种常见的网页设计元素,用于展示一系列图片或内容,并允许用户通过点击或自动切换来查看不同的项。以下是一个使用原生JavaScript实现的简单焦点图轮播的示例代码,包括HTML、CSS和JavaScript部分。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>焦点图轮播</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<div class="carousel">
<div class="carousel-inner">
<div class="carousel-item active">
<img src="image1.jpg" alt="Image 1">
</div>
<div class="carousel-item">
<img src="image2.jpg" alt="Image 2">
</div>
<div class="carousel-item">
<img src="image3.jpg" alt="Image 3">
</div>
</div>
<button class="carousel-control prev">❮</button>
<button class="carousel-control next">❯</button>
</div>
<script src="script.js"></script>
</body>
</html>/* styles.css */
body {
font-family: Arial, sans-serif;
}
.carousel {
position: relative;
width: 80%;
margin: 0 auto;
}
.carousel-inner {
position: relative;
overflow: hidden;
width: 100%;
}
.carousel-item {
display: none;
width: 100%;
}
.carousel-item.active {
display: block;
}
.carousel-item img {
width: 100%;
height: auto;
}
.carousel-control {
position: absolute;
top: 50%;
transform: translateY(-50%);
background: rgba(0, 0, 0, 0.5);
color: white;
border: none;
padding: 10px;
cursor: pointer;
}
.carousel-control.prev {
left: 0;
}
.carousel-control.next {
right: 0;
}// script.js
document.addEventListener('DOMContentLoaded', function() {
const items = document.querySelectorAll('.carousel-item');
let currentIndex = 0;
function showItem(index) {
items.forEach((item, i) => {
item.classList.toggle('active', i === index);
});
}
function nextItem() {
currentIndex = (currentIndex + 1) % items.length;
showItem(currentIndex);
}
function prevItem() {
currentIndex = (currentIndex - 1 + items.length) % items.length;
showItem(currentIndex);
}
document.querySelector('.carousel-control.next').addEventListener('click', nextItem);
document.querySelector('.carousel-control.prev').addEventListener('click', prevItem);
// 自动播放功能
setInterval(nextItem, 3000); // 每3秒切换一次
});通过以上代码和解释,你可以实现一个基本的焦点图轮播功能,并了解其相关的基础概念和应用场景。
没有搜到相关的文章