js图片无缝滚动插件使用详解


Posted in Javascript onMay 26, 2020

本文实例为大家分享了js图片无缝滚动插件的具体代码,供大家参考,具体内容如下

css

ul {
 list-style: none;
 margin: 0;
 padding: 0;
 }

.slide-img-ul {
 white-space: nowrap;
}

.slide-img-ul>li {
 width: 100px;
 height: 100px;
 margin: 10px;
 display: inline-block;
 vertical-align: middle
}

.slide-img-ul>li>img {
 width: 100%;
 height: 100%;
 max-width: 100%;
 max-height: 100%;
}

html

<div id="slideScroll"></div>
<div id="slideFast"></div>

js

;(function(window , document) {
 function createImg(ele , opt) {
 var def = {
  arrImg: [
  {src:'../img/LOGO.png' , id:'0'},
  {src:'../img/zu.png' , id:'1'},
  {src:'../img/zu.png' , id:'2'},
  {src:'../img/zu.png' , id:'3'},
  {src:'../img/zu.png' , id:'4'},
  ] ,
  currentData: 0, 
  time: 50 //滑动速度
 }
 //为ele添加css样式
 ele.style.width = '240px';
 ele.style.height = '120px';
 ele.style.overflow = 'hidden';
 ele.style.border = '1px solid #eee';
 ele.style.boxShadow = '0 0 8px 2px #eee';
 ele.style.position = 'relative';

 //Object.assign(target , source) 方法用于将所有可枚举属性的值从一个或多个源对象复制到目标对象 。 返回目标对象。
 var obj = Object.assign(def , opt), 
  _ul = document.createElement('ul'),
  str = '',
  demo

  _ul.setAttribute('class' , 'slide-img-ul') 

 obj.arrImg.map((item , index) => {
  str+='<li><img src='+ item.src+' id='+item.id+'></li>'
 })

 demo=str+str //复制该组图片以达到无缝连接的视觉效果
 _ul.innerHTML = demo 
 ele.appendChild(_ul)

 var myWay = setInterval(function(){calData(_ul)}, obj.time) //定时器

 function calData(element){
  element.style.marginLeft = -(obj.currentData)+'px'
  obj.currentData++
  //(为什么*120 ?)图片总宽度(包括margin)为120px , 当第一组图片刚好溢出父级时 , 父级marginLeft置0;
  if(obj.currentData > obj.arrImg.length*120 ) { 
  obj.currentData = 0;
  }
 }

 ele.onmouseover = function() {
  clearInterval(myWay)
 }

 ele.onmouseout= function() {
  myWay = setInterval(function(){calData(_ul)}, obj.time)
 }
 }

 window.createImg = createImg

 }(window , document))

 window.onload = function() {
 new createImg(document.getElementById('slideScroll'))
 new createImg(document.getElementById('slideFast') ,{time:10})
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
用Javascript读取中文COOKIE的解决办法
Feb 15 Javascript
Ext 表单布局实例代码
Apr 30 Javascript
jQuery ajax 路由和过滤器使用说明
Aug 02 Javascript
javascript 中String.match()与RegExp.exec()的区别说明
Jan 10 Javascript
14款经典网页图片和文字特效的jQuery插件-前端开发必备
Aug 25 Javascript
javascript的函数劫持浅析
Sep 26 Javascript
Javascript 链式作用域详细介绍
Feb 23 Javascript
微信小程序列表渲染功能之列表下拉刷新及上拉加载的实现方法分析
Nov 27 Javascript
angular将html代码输出为内容的实例
Sep 30 Javascript
详解在vue-cli项目下简单使用mockjs模拟数据
Oct 19 Javascript
JavaScript实现京东快递单号查询
Nov 30 Javascript
JS操作JSON常用方法(10w阅读)
Dec 06 Javascript
vue中datepicker的使用教程实例代码详解
Jul 08 #Javascript
微信小程序实现类似微信点击语音播放效果
Mar 30 #Javascript
微信小程序如何访问公众号文章
Jul 08 #Javascript
JavaScript实现的开关灯泡点击切换特效示例
Jul 08 #Javascript
JavaScript实现的联动菜单特效示例
Jul 08 #Javascript
vue拖拽组件 vuedraggable API options实现盒子之间相互拖拽排序
Jul 08 #Javascript
JavaScript定时器设置、使用与倒计时案例详解
Jul 08 #Javascript
You might like
php页面缓存ob系列函数介绍
2012/10/18 PHP
php cookie名使用点号(句号)会被转换
2014/10/23 PHP
PHP生成不重复随机数的方法汇总
2014/11/19 PHP
JAVASCRIPT下判断IE与FF的比较简单的方式
2008/10/17 Javascript
关于jquery动态增减控件的一些想法和小插件
2010/08/01 Javascript
JQuery查找DOM节点的方法
2015/06/11 Javascript
C++中的string类的用法小结
2015/08/07 Javascript
jquery的幻灯片图片切换效果代码分享
2015/09/07 Javascript
javascript实现别踩白块儿小游戏程序
2015/11/22 Javascript
Node.js静态文件服务器改进版
2016/01/10 Javascript
基于jQuery实现二级下拉菜单效果
2016/02/01 Javascript
js生成随机数(指定范围)的实例代码
2016/07/10 Javascript
javascript显示系统当前时间代码
2016/12/29 Javascript
Node.js如何响应Ajax的POST请求并且保存为JSON文件详解
2017/03/10 Javascript
vue和webpack安装命令详解
2018/06/15 Javascript
vue登录注册实例详解
2019/09/14 Javascript
javascript canvas实现简易时钟例子
2020/09/05 Javascript
Django1.3添加app提示模块不存在的解决方法
2014/08/26 Python
Python实现读写sqlite3数据库并将统计数据写入Excel的方法示例
2017/08/07 Python
将string类型的数据类型转换为spark rdd时报错的解决方法
2019/02/18 Python
Python实现的旋转数组功能算法示例
2019/02/23 Python
Linux上使用Python统计每天的键盘输入次数
2019/04/17 Python
python实现opencv+scoket网络实时图传
2020/03/20 Python
Python Scrapy图片爬取原理及代码实例
2020/06/12 Python
python+pygame实现坦克大战小游戏的示例代码(可以自定义子弹速度)
2020/08/11 Python
使用phonegap获取位置信息的实现方法
2017/03/31 HTML / CSS
新加坡时尚网上购物:Zalora新加坡
2016/07/26 全球购物
美国二手奢侈品寄售网站:TheRealReal
2016/10/29 全球购物
Urban Outfitters英国官网:美国平价服饰品牌
2016/11/25 全球购物
无谷物狗粮:Pooch & Mutt
2018/05/23 全球购物
舞会礼服和舞会鞋:PromGirl
2019/04/22 全球购物
婚鞋、新娘鞋、礼服鞋、童鞋:Nina Shoes
2019/09/04 全球购物
大学生求职简历的自我评价
2013/10/14 职场文书
写好求职信第一句话的技巧
2013/10/26 职场文书
如何写一份好的英文求职信
2014/03/19 职场文书
mysql 索引合并的使用
2021/08/30 MySQL