javascript实现多张图片左右无缝滚动效果

发布时间 - 2026-01-11 00:18:22    点击率:

结构:box包含ul,ul包含4个li;ul绝对定位。

复制li-1、li-2到第li-4后面,为了区分于li-1、li-2,内容改为li-5、li-6,颜色不变。此时ul包含6个li。

需要注意的是,移动的是ul这个大盒子而不是li。

原理:当ul 绝对定位的left 值等于(li-1+li-2+li-3+li-4)的宽度时,利用JavaScript快速复原left 值为0 。

此时请注意盒子里面数字和颜色的变化!

效果图:

示例代码:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <meta http-equiv="X-UA-Compatible" content="ie=edge">
 <title>Document</title>
 <style media="screen">
  *{
   padding: 0;
   margin: 0;
  }
  ul,li {
   list-style: none;
  }
  img {
   vertical-align: top;
  }
  #box{
   width: 400px;
   height: 100px;
   margin: 100px auto;
   background-color: pink;
   position: relative;
   overflow: hidden;
  }
  #box ul {
   width: 2000px;
   position: absolute;
   left: 0;
   top: 0;
  }
  #box li {
   float: left;
  }
  .aa {
   width: 200px;
   height: 100px;
  }
  .li-1{
   background-color: #f6e659;
  }
  .li-2{
   background-color: #57fa4f;
  }
  .li-3{
   background-color: #3a8ef1;
  }
  .li-4{
   background-color: #c057f1;
  }
 </style>
</head>
<body>
 <div id="box">
  <ul>
   <li class="li-1 aa">li-1</li>
   <li class="li-2 aa">li-2</li>
   <li class="li-3 aa">li-3</li>
   <li class="li-4 aa">li-4</li>
   <li class="li-1 aa">li-5</li>
   <li class="li-2 aa">li-6</li>
  </ul>
 </div>
</body>
</html>
<script type="text/javascript">
 var box = document.getElementById("box");
 var ul = box.children[0];
 var num = 0;
 timer = setInterval(fn,10);
 function fn() {
  num--;
  num <= -800 ? num = 0 : num;
  ul.style.left = num + "px";
 }
</script>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# js实现无缝滚动  # javascript无缝滚动  # js左右无缝滚动  # js实现图片无缝滚动特效  # js实现图片无缝滚动  # Javascript 实现图片无缝滚动  # 使用Javascript简单实现图片无缝滚动  # 可自定义速度的js图片无缝滚动示例分享  # JS图片无缝滚动(简单利于使用)  # jcarousellite.js 基于Jquery的图片无缝滚动插件  # JS实现单张或多张图片持续无缝滚动的示例代码  # 的是  # 请注意  # 到第  # 需要注意  # 值为  # 而不是  # viewport  # width  # content  # charset  # device  # head  # en  # meta  # UTF  # lang  # Compatible  # UA  # edge  # Document 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 魔方云NAT建站如何实现端口转发?  详解Android中Activity的四大启动模式实验简述  Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中  Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID  悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音  Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能  如何在阿里云虚拟主机上快速搭建个人网站?  javascript如何操作浏览器历史记录_怎样实现无刷新导航  晋江文学城电脑版官网 晋江文学城网页版直接进入  如何在宝塔面板中修改默认建站目录?  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  如何在宝塔面板中创建新站点?  Laravel怎么实现模型属性的自动加密  如何在IIS7上新建站点并设置安全权限?  如何在阿里云通过域名搭建网站?  Laravel怎么在Controller之外的地方验证数据  Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控  Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程  js实现点击每个li节点,都弹出其文本值及修改  Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法  Laravel如何安装使用Debugbar工具栏_Laravel性能调试与SQL监控插件【步骤】  Thinkphp 中 distinct 的用法解析  什么是javascript作用域_全局和局部作用域有什么区别?  Python自然语言搜索引擎项目教程_倒排索引查询优化案例  网站制作大概多少钱一个,做一个平台网站大概多少钱?  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点  Bootstrap整体框架之CSS12栅格系统  Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试  JavaScript如何实现音频处理_Web Audio API如何工作?  悟空识字怎么关闭自动续费_悟空识字取消会员自动扣费步骤  Laravel如何使用Livewire构建动态组件?(入门代码)  Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧  Laravel如何设置自定义的日志文件名_Laravel根据日期或用户ID生成动态日志【技巧】  高防服务器:AI智能防御DDoS攻击与数据安全保障  如何用5美元大硬盘VPS安全高效搭建个人网站?  Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】  如何在局域网内绑定自建网站域名?  jQuery validate插件功能与用法详解  Win11怎么设置虚拟桌面 Win11新建多桌面切换操作【技巧】  微信小程序 配置文件详细介绍  Laravel怎么进行数据库事务处理_Laravel DB Facade事务操作确保数据一致性  详解Nginx + Tomcat 反向代理 负载均衡 集群 部署指南  Laravel如何连接多个数据库_Laravel多数据库连接配置与切换教程  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧  Laravel如何实现密码重置功能_Laravel密码找回与重置流程  javascript中数组(Array)对象和字符串(String)对象的常用方法总结  java获取注册ip实例  焦点电影公司作品,电影焦点结局是什么?