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 相关文章推荐
js 判断checkbox是否选中的操作方法
Nov 09 Javascript
JQuery入门——用one()方法绑定事件处理函数(仅触发一次)
Feb 05 Javascript
js正则表达式验证邮件地址
Nov 12 Javascript
js获取url传值的方法
Dec 18 Javascript
js实现文字垂直滚动和鼠标悬停效果
Dec 31 Javascript
JavaScript解析JSON格式数据的方法示例
Jan 24 Javascript
JS+HTML5实现图片在线预览功能
Jul 22 Javascript
前端主流框架vue学习笔记第一篇
Jul 26 Javascript
JavaScript+H5实现微信摇一摇功能
May 23 Javascript
AjaxFileUpload.js实现异步上传文件功能
Apr 19 Javascript
ionic3双击返回退出应用的方法
Sep 17 Javascript
javascript实现简易计算器功能
Sep 23 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
967 个函式
2006/10/09 PHP
php中使用Akismet防止垃圾评论的代码
2011/06/10 PHP
curl不使用文件存取cookie php使用curl获取cookie示例
2014/01/26 PHP
destoon常用的安全设置概述
2014/06/21 PHP
Yii 快速,安全,专业的PHP框架
2014/09/03 PHP
在Nginx上部署ThinkPHP项目教程
2015/02/02 PHP
PHP+Mysql+jQuery文件下载次数统计实例讲解
2015/10/10 PHP
php7 安装yar 生成docker镜像
2017/05/09 PHP
php命令行写shell实例详解
2018/07/19 PHP
PHP让网站移动访问更加友好方法
2019/02/14 PHP
Laravel 6.2 中添加了可调用容器对象的方法
2019/10/22 PHP
JavaScript网页定位详解
2014/01/13 Javascript
Jquery实现仿腾讯微博发表广播
2014/11/17 Javascript
JavaScript 常见安全漏洞和自动化检测技术
2015/08/21 Javascript
原生JS实现平滑回到顶部组件
2016/03/16 Javascript
bootstrap table动态加载数据示例代码
2017/03/25 Javascript
bootstrap datepicker插件默认英文修改为中文
2017/07/28 Javascript
解决Vue2.x父组件与子组件之间的双向绑定问题
2018/03/06 Javascript
JS实现左边列表移到到右边列表功能
2018/03/28 Javascript
详解webpack-dev-server使用方法
2018/09/14 Javascript
Typescript3.9 常用新特性一览(推荐)
2020/05/14 Javascript
JavaScript的垃圾回收机制与内存管理
2020/08/06 Javascript
OpenLayers3加载常用控件使用方法详解
2020/09/25 Javascript
[13:55]Newbee vs Team Spirit
2018/06/07 DOTA
Python Lambda函数使用总结详解
2019/12/11 Python
python上下文管理器异常问题解决方法
2021/02/07 Python
HTML5 Web Workers之网站也能多线程的实现
2013/04/24 HTML / CSS
医生实习工作总结的自我评价
2013/09/27 职场文书
《卖木雕的少年》教学反思
2014/04/11 职场文书
联谊活动总结
2014/08/28 职场文书
监察局领导班子四风问题整改措施思想汇报
2014/10/05 职场文书
2014年质检员工作总结
2014/11/18 职场文书
优秀教师先进材料
2014/12/16 职场文书
2015年环卫工作总结
2015/04/28 职场文书
带你彻底理解JavaScript中的原型对象
2021/04/14 Javascript
redis protocol通信协议及使用详解
2022/07/15 Redis