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


Posted in Javascript onMarch 22, 2017

结构: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 。

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

效果图:

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

示例代码:

<!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>

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

Javascript 相关文章推荐
JavaScript高级程序设计(第3版)学习笔记 概述
Oct 11 Javascript
JavaScript利用构造函数和原型的方式模拟C#类的功能
Mar 06 Javascript
JavaScript判断按钮被点击的方法
Dec 13 Javascript
Bootstrap Metronic完全响应式管理模板之菜单栏学习笔记
Jul 08 Javascript
关于JavaScript数组你所不知道的3件事
Aug 24 Javascript
JS定时检测任务任务完成后执行下一步的解决办法
Dec 22 Javascript
CodeMirror js代码加亮使用总结
Mar 25 Javascript
jQuery实现下拉菜单的实例代码
Jun 19 jQuery
微信小程序解析富文本过程详解
Jul 13 Javascript
JavaScript判断数组类型的方法
Oct 23 Javascript
node.js使用 http-proxy 创建代理服务器操作示例
Feb 10 Javascript
利用uni-app生成微信小程序的踩坑记录
Apr 05 Javascript
tab栏切换原理
Mar 22 #Javascript
js中的DOM模拟购物车功能
Mar 22 #Javascript
js+canvas实现动态吃豆人效果
Mar 22 #Javascript
JavaScript实现星星等级评价功能
Mar 22 #Javascript
discuz表情的JS提取方法分析
Mar 22 #Javascript
详解vue2.0组件通信各种情况总结与实例分析
Mar 22 #Javascript
JS简单封装的图片无缝滚动效果示例【测试可用】
Mar 22 #Javascript
You might like
完美解决PHP中的Cannot modify header information 问题
2013/08/12 PHP
PHP实现仿Google分页效果的分页函数
2015/07/29 PHP
PHP中Session和Cookie是如何操作的
2015/10/10 PHP
JS+XML 省份和城市之间的联动实现代码
2009/10/14 Javascript
jQuery关于导航条背景切换效果实现示例
2013/09/04 Javascript
用Javascript获取页面元素的具体位置
2013/12/09 Javascript
JavaScript动态插入CSS的方法
2015/12/10 Javascript
JavaScript编码风格指南(中文版)
2016/08/26 Javascript
AngularJS递归指令实现Tree View效果示例
2016/11/07 Javascript
Nodejs多站点切换Htpps协议详解及简单实例
2017/02/23 NodeJs
NodeJs中express框架的send()方法简介
2017/06/20 NodeJs
bootstrap table方法之expandRow-collapseRow展开或关闭当前行数据
2020/08/09 Javascript
javascript实现考勤日历功能
2018/11/29 Javascript
Js跳出两级循环方法代码实例
2020/09/22 Javascript
[36:16]完美世界DOTA2联赛PWL S3 access vs Rebirth 第一场 12.19
2020/12/24 DOTA
详解Python nose单元测试框架的安装与使用
2017/12/20 Python
解决Python3中的中文字符编码的问题
2018/07/18 Python
Python从文件中读取指定的行以及在文件指定位置写入
2019/09/06 Python
python 利用turtle模块画出没有角的方格
2019/11/23 Python
Tensorflow的梯度异步更新示例
2020/01/23 Python
在Django中预防CSRF攻击的操作
2020/03/13 Python
python语言中有算法吗
2020/06/16 Python
django rest framework 过滤时间操作
2020/07/12 Python
深入了解Python 方法之类方法 &amp; 静态方法
2020/08/17 Python
伦敦最有品味的百货:Liberty London
2016/11/12 全球购物
高中生职业规划范文
2014/03/09 职场文书
汇源肾宝广告词
2014/03/20 职场文书
公司寄语大全
2014/04/10 职场文书
小学生环保标语
2014/06/13 职场文书
实验室的标语
2014/06/20 职场文书
2016年五一促销广告语
2016/01/28 职场文书
2016银行求职自荐信
2016/01/28 职场文书
《海上日出》教学反思
2016/02/23 职场文书
nginx配置ssl实现https的方法示例
2021/03/31 Servers
使用pandas或numpy处理数据中的空值(np.isnan()/pd.isnull())
2021/05/14 Python
yyds什么意思?90后已经听不懂00后讲话了……
2022/02/03 杂记