jQuery 是一个快速、小巧且功能丰富的 JavaScript 库,它简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。图片左右滑动是一种常见的网页交互效果,通常用于图片轮播或相册展示。
以下是一个简单的 jQuery 实现图片左右滑动的示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>图片左右滑动</title>
<style>
.slider {
width: 600px;
overflow: hidden;
position: relative;
}
.slider ul {
list-style: none;
padding: 0;
margin: 0;
display: flex;
}
.slider li {
min-width: 100%;
box-sizing: border-box;
}
.slider img {
width: 100%;
display: block;
}
.slider .prev, .slider .next {
position: absolute;
top: 50%;
transform: translateY(-50%);
cursor: pointer;
}
.slider .prev {
left: 10px;
}
.slider .next {
right: 10px;
}
</style>
</head>
<body>
<div class="slider">
<ul>
<li><img src="image1.jpg" alt="Image 1"></li>
<li><img src="image2.jpg" alt="Image 2"></li>
<li><img src="image3.jpg" alt="Image 3"></li>
</ul>
<div class="prev">Prev</div>
<div class="next">Next</div>
</div>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$(document).ready(function() {
var $slider = $('.slider ul');
var $prev = $('.slider .prev');
var $next = $('.slider .next');
var slideCount = $slider.find('li').length;
var slideWidth = $slider.find('li').first().width();
var currentIndex = 0;
function slideTo(index) {
$slider.animate({
'left': -index * slideWidth
}, 500);
currentIndex = index;
}
$prev.click(function() {
if (currentIndex > 0) {
slideTo(currentIndex - 1);
}
});
$next.click(function() {
if (currentIndex < slideCount - 1) {
slideTo(currentIndex + 1);
}
});
});
</script>
</body>
</html>
TouchSwipe
来支持触摸滑动。<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.touchswipe/1.6.19/jquery.touchSwipe.min.js"></script>
<script>
$(document).ready(function() {
$('.slider ul').swipe({
swipeLeft: function() {
$('.slider .next').click();
},
swipeRight: function() {
$('.slider .prev').click();
}
});
});
</script>
通过以上方法,你可以实现一个基本的图片左右滑动效果,并解决一些常见问题。
领取专属 10元无门槛券
手把手带您无忧上云