图片左右滚动是一种常见的网页动画效果,通过JavaScript控制图片容器内的图片在一定时间内向左或向右移动,从而实现滚动效果。
以下是一个简单的JavaScript实现图片左右滚动的示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>图片左右滚动</title>
<style>
#scrollContainer {
width: 100%;
overflow: hidden;
position: relative;
}
#scrollContent {
display: flex;
animation: scroll 10s linear infinite;
}
#scrollContent img {
width: 200px;
height: auto;
margin-right: 20px;
}
@keyframes scroll {
0% { transform: translateX(0); }
100% { transform: translateX(-100%); }
}
</style>
</head>
<body>
<div id="scrollContainer">
<div 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="image4.jpg" alt="Image 4">
<img src="image5.jpg" alt="Image 5">
</div>
</div>
<script>
// 可以通过JavaScript动态调整滚动速度
const scrollContent = document.getElementById('scrollContent');
const images = scrollContent.getElementsByTagName('img');
const totalWidth = Array.from(images).reduce((acc, img) => acc + img.offsetWidth + 20, 0);
// 确保内容宽度足够实现滚动效果
scrollContent.style.width = `${totalWidth}px`;
</script>
</body>
</html>
requestAnimationFrame
替代setTimeout
或setInterval
。@keyframes
中的transform: translateX()
值,确保方向正确。animation-duration
和infinite
属性正确设置,检查JavaScript代码逻辑。通过以上方法,可以实现一个简单且高效的图片左右滚动效果,并解决常见的问题。
企业创新在线学堂
腾讯云存储知识小课堂
新知
云+未来峰会
云+社区技术沙龙[第7期]
云+社区技术沙龙[第14期]
小程序·云开发官方直播课(数据库方向)
云+社区技术沙龙[第8期]
云+社区技术沙龙[第5期]
领取专属 10元无门槛券
手把手带您无忧上云