JavaScript 实现图片无缝循环滚动效果

作者:拾光时间:2026-10-30 12:41:23浏览:237

本文介绍了如何使用 JavaScript 和循环定时器实现图片的无缝循环滚动。通过设置 CSS 样式控制容器与图片布局,结合 setInterval 函数不断调整元素位置,当滚动至临界点时重置坐标,从而形成连续不断的视觉效果。

JavaScript 实现图片无缝循环滚动效果

本文分享了一段使用 JavaScript 实现无缝循环滚动的代码示例,供读者参考学习。

实现该效果需满足两个基本条件:首先,图片尺寸设定为 260*400;其次,利用循环定时器来驱动滚动逻辑。


<!doctype html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>无缝滚动</title>
</head>
<style type="text/css">
 .row{
 width: 1298px;
 height: 400px;
 border: 1px solid;
 box-shadow:2px 2px 2px #000;
 overflow: hidden;
 }
 .box{
 position: relative;
 }
 .box1,.box2{
 width: 1298px;
 position: absolute;
 }
 .box2{
 left:1298px;
 }
 img{
 float: left;
 }
</style>
<body>
 <div class="row">
 <div class="box" id="box">
  <div class="box1" id="box1">
  <img src="images/1.jpg">
  <img src="images/2.jpg">
  <img src="images/3.jpg">
  <img src="images/4.jpg">
  <img src="images/5.jpg">
  </div>
  <div class="box2" id="box2">
  <img src="images/1.jpg">
  <img src="images/2.jpg">
  <img src="images/3.jpg">
  <img src="images/4.jpg">
  <img src="images/5.jpg">
  </div>
 </div>
 </div>
</body>
<script type="text/javascript">
 window.onload = function(){
 var _box1 = document.getElementById("box1");
 var _box2 = document.getElementById("box2");
 var x = 0;
 var fun = function(){
  _box1.style.left = x + 'px';
  _box2.style.left = (x +1298) + 'px';
  x--;
  if((x +1298) == 0){
  x = 0;
  }
 }
 setInterval(fun,1);
 }
</script>
</html>

以上就是本文的全部内容,希望对读者的学习有所帮助。

作者最新文章