jquery图片轮播代码
以下是一个基于jQuery的简单图片轮播实现代码示例,包含自动轮播和手动切换功能:
HTML结构
<div class="slider">
<div class="slider-container">
<img src="image1.jpg" class="active">
<img src="image2.jpg">
<img src="image3.jpg">
</div>
<div class="slider-controls">
<button class="prev">Previous</button>
<button class="next">Next</button>
</div>
<div class="slider-dots">
<span class="dot active"></span>
<span class="dot"></span>
<span class="dot"></span>
</div>
</div>
CSS样式
.slider {
position: relative;
width: 800px;
height: 400px;
margin: 0 auto;
overflow: hidden;
}
.slider-container img {
position: absolute;
width: 100%;
height: 100%;
opacity: 0;
transition: opacity 1s ease;
}
.slider-container img.active {
opacity: 1;
}
.slider-controls {
position: absolute;
width: 100%;
display: flex;
justify-content: space-between;
top: 50%;
transform: translateY(-50%);
}
.slider-dots {
position: absolute;
bottom: 20px;
width: 100%;
text-align: center;
}
.dot {
display: inline-block;
width: 12px;
height: 12px;
margin: 0 5px;
border-radius: 50%;
background: #ccc;
cursor: pointer;
}
.dot.active {
background: #333;
}
jQuery代码
$(document).ready(function() {
let currentIndex = 0;
const images = $('.slider-container img');
const totalImages = images.length;
let slideInterval;
function showImage(index) {
images.removeClass('active');
$(images[index]).addClass('active');
$('.dot').removeClass('active');
$('.dot').eq(index).addClass('active');
currentIndex = index;
}
function nextImage() {
let nextIndex = (currentIndex + 1) % totalImages;
showImage(nextIndex);
}
function startSlider() {
slideInterval = setInterval(nextImage, 3000);
}
function stopSlider() {
clearInterval(slideInterval);
}
$('.next').click(function() {
stopSlider();
nextImage();
startSlider();
});
$('.prev').click(function() {
stopSlider();
let prevIndex = (currentIndex - 1 + totalImages) % totalImages;
showImage(prevIndex);
startSlider();
});
$('.dot').click(function() {
stopSlider();
let dotIndex = $(this).index();
showImage(dotIndex);
startSlider();
});
startSlider();
});
功能说明
- 自动轮播:每3秒自动切换到下一张图片
- 手动控制:通过Prev/Next按钮切换图片
- 指示点:点击圆点可跳转到对应图片
- 平滑过渡:使用CSS过渡效果实现淡入淡出
扩展建议
- 响应式设计:添加媒体查询适应不同屏幕尺寸
- 预加载图片:确保所有图片加载完成后再启动轮播
- 触摸支持:添加touch事件处理实现移动端滑动切换
此代码提供了核心功能,可根据实际需求调整过渡效果、时间间隔和样式细节。







