JavaScript 图片无缝向上滚动是一种网页动画效果,通过使用 JavaScript 和 CSS 来实现图片列表的连续滚动。这种效果常用于网站的轮播图、广告展示等场景,以吸引用户的注意力并提供动态视觉体验。
以下是一个简单的 JavaScript 图片无缝向上滚动的示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>图片无缝向上滚动</title>
<style>
#scrollContainer {
width: 100%;
height: 200px;
overflow: hidden;
position: relative;
}
.scrollContent {
position: absolute;
width: 100%;
}
.scrollContent img {
width: 100%;
display: block;
}
</style>
</head>
<body>
<div id="scrollContainer">
<div class="scrollContent" id="scrollContent">
<img src="image1.jpg" alt="Image 1">
<img src="image2.jpg" alt="Image 2">
<img src="image3.jpg" alt="Image 3">
<!-- 复制第一张图片到最后实现无缝 -->
<img src="image1.jpg" alt="Image 1">
</div>
</div>
<script>
function startScroll() {
var container = document.getElementById('scrollContainer');
var content = document.getElementById('scrollContent');
var speed = 1; // 滚动速度
function scroll() {
content.style.top = (content.offsetTop - speed) + 'px';
if (content.offsetTop <= -content.clientHeight / 2) {
content.style.top = '0px'; // 重置位置实现无缝滚动
}
}
setInterval(scroll, 20); // 设置定时器
}
window.onload = startScroll;
</script>
</body>
</html>
requestAnimationFrame
替代 setInterval
来优化动画性能。loading="lazy"
属性。通过以上方法,可以实现一个简单且效果良好的图片无缝向上滚动效果。如果需要更复杂的功能,可以考虑使用现成的库或插件,如 Swiper 或 Slick。
领取专属 10元无门槛券
手把手带您无忧上云