jquery实现图片平滑滚动详解


Posted in jQuery onMarch 22, 2017

本文实例为大家分享了jquery图片平滑滚动效果的具体代码,供大家参考,具体内容如下

随便写了个DOM,没有美观性,见谅

jquery实现图片平滑滚动详解

原理:

1、定义两组ul列表放图,第一个ul放5张图,第二个ul为空
2、为什么要用两个ul?因为要用到jQuery的克隆方法clone()。把第一个ul的图片全部克隆到第二个ul中,形成并列无缝滚动效果
3、.box设置为绝对定位,.wrap设置为相对定位
4、设置定时器,让.box的left值一直减-,当left值大于第一个ul的长度时,让他left等于0,然后再重新重置定时器,继续执行

代码部分:

//CSS

*{margin: 0;padding: 0}
ul{list-style: none}
.box ul li{display: block;float: left;width: 300px;height: 300px;margin-right: -1px;background-size: cover;background-position: center center;}
.box{height: 300px;width:3010px;}
#box1,#box2{float: left}
.wrap{position: relative;width: 800px;margin: auto;height: 300px;overflow: hidden}
.box{position: absolute;left: 0;}

//HTML

<body>
  <div class="wrap">
    <div class="box">
      <ul id="box1">
        <li style="background:url(images/1.jpg) no-repeat"></li>
        <li style="background:url(images/2.jpg) no-repeat"></li>
        <li style="background:url(images/3.jpg) no-repeat"></li>
        <li style="background:url(images/4.jpg) no-repeat"></li>
        <li style="background:url(images/5.jpg) no-repeat"></li>
      </ul>
      <ul id="box2"></ul>
    </div>
  </div>
</body>

//JQUERY

<script>
  var timer='';//设置一个定时器
  var $box1=$('#box1').children().clone(true);/*克隆box1的子元素*/
  $('#box2').append($box1);//将复制的元素插入到#box2中
  var $left=parseInt($('.box').css('left'));//获取.box的left值
  var scroll=function(){
    $left-=2;//设置滚动速度为2
    $('.box').css('left',$left+'px');//left赋值
    if($left<-1500){//当box值小于-1500px时,重置.box left值为0;
      $('.box').css('left','0');
      $left=0;
    }
    timer =setTimeout(scroll,30);
  }
  setTimeout(scroll,100);
  $('.wrap').hover(function(){
    clearTimeout(timer);
  },function(){
    setTimeout(scroll,100);
  });
</script>

主要是理解思路,思路理清了,相信你不用看dom都会做了。

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

jQuery 相关文章推荐
浅谈事件冒泡、事件委托、jQuery元素节点操作、滚轮事件与函数节流
Jul 22 jQuery
jQuery 1.9版本以上的浏览器判断方法代码分享
Aug 28 jQuery
jquery中ajax请求后台数据成功后既不执行success也不执行error的完美解决方法
Dec 24 jQuery
jQuery中将json数据显示到页面表格的方法
May 27 jQuery
jQuery实现动态加载select下拉列表项功能示例
May 31 jQuery
jQuery实现checkbox全选功能完整实例
Jul 12 jQuery
JQuery通过后台获取数据遍历到前台的方法
Aug 13 jQuery
详解JQuery基础动画操作
Apr 12 jQuery
jquery实现下载图片功能
Jul 18 jQuery
jQuery实现倒计时功能完整示例
Jun 01 jQuery
如何在vue 中引入使用jquery
Nov 10 jQuery
jQuery轻松实现无缝轮播效果
Mar 22 #jQuery
jQuery插件FusionCharts绘制ScrollColumn2D图效果示例【附demo源码下载】
Mar 22 #jQuery
jQuery+ThinkPHP+Ajax实现即时消息提醒功能实例代码
Mar 21 #jQuery
jQuery插件HighCharts绘制简单2D柱状图效果示例【附demo源码】
Mar 21 #jQuery
jQuery插件HighCharts绘制简单2D折线图效果示例【附demo源码】
Mar 21 #jQuery
jQuery插件HighCharts绘制2D饼图效果示例【附demo源码下载】
Mar 21 #jQuery
使用jQuery监听扫码枪输入并禁止手动输入的实现方法(推荐)
Mar 21 #jQuery
You might like
PHP 编写大型网站问题集
2010/05/07 PHP
PHP中cookie知识点学习
2018/05/06 PHP
PHP htmlentities()函数用法讲解
2019/02/25 PHP
thinkPHP5使用Rabc实现权限管理
2019/08/28 PHP
通过DOM脚本去设置样式信息
2010/09/19 Javascript
jQuery实现行文字链接提示效果的方法
2015/03/10 Javascript
浅谈javascript中call()、apply()、bind()的用法
2015/04/20 Javascript
Html5+jQuery+CSS制作相册小记录
2016/12/30 Javascript
EasyUI Datebox 日期验证之开始日期小于结束时间
2017/05/19 Javascript
node.js中cluster的使用教程
2017/06/09 Javascript
Angular CLI在Angular项目中如何使用scss详解
2018/04/10 Javascript
PWA介绍及快速上手搭建一个PWA应用的方法
2019/01/27 Javascript
微信小程序使用车牌号输入法的示例代码
2019/08/20 Javascript
解决Echarts 显示隐藏后宽度高度变小的问题
2020/07/19 Javascript
跟老齐学Python之让人欢喜让人忧的迭代
2014/10/02 Python
python中sys.argv参数用法实例分析
2015/05/20 Python
Python 爬虫学习笔记之单线程爬虫
2016/09/21 Python
python实现指定文件夹下的指定文件移动到指定位置
2018/09/17 Python
Python开发的十个小贴士和技巧及长常犯错误
2018/09/27 Python
解决PyCharm控制台输出乱码的问题
2019/01/16 Python
python实现WebSocket服务端过程解析
2019/10/18 Python
python tornado修改log输出方式
2019/11/18 Python
Python Sphinx使用实例及问题解决
2020/01/17 Python
Python filter过滤器原理及实例应用
2020/08/18 Python
单身旅行者的单身假期:Just You
2018/04/08 全球购物
英国领先的独立时装店:Van Mildert
2019/10/28 全球购物
英国顶尖手表珠宝品牌独家授权经销商:HS Johnson
2020/10/28 全球购物
一些Solaris面试题
2013/03/22 面试题
《颐和园》教学反思
2014/02/26 职场文书
葬礼司仪主持词
2014/03/31 职场文书
感恩节活动策划方案
2014/05/16 职场文书
党的群众路线教育实践活动对照检查材料范文
2014/09/24 职场文书
2015年安全生产管理工作总结
2015/05/25 职场文书
2015最新婚礼主持词
2015/06/30 职场文书
利用前端HTML+CSS+JS开发简单的TODOLIST功能(记事本)
2021/04/13 Javascript
Android中View.post和Handler.post的关系
2022/06/05 Java/Android