jQuery实现的多张图无缝滚动效果【测试可用】


Posted in Javascript onSeptember 12, 2016

本文实例讲述了jQuery实现的多张图无缝滚动效果。分享给大家供大家参考,具体如下:

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>slider</title>
<style>
*{
  padding: 0;
  margin: 0;
}
li{
  list-style-type: none;
}
body{
  margin: 50px;
}
.wrap{
  border: 3px solid #f00;
  width: 600px;
  height: 200px;
  position: relative;
  overflow: hidden;
}
.wrap ul{
  overflow: hidden;
  position:absolute;
  width: 1600px;
  left: 0;
  top: 0;
  _height:1px;
}
.wrap ul li{
  float: left;
  width: 200px;
}
</style>
</head>
<body>
<a href="javascript:;" class="goLeft">向左走</a>
<a href="javascript:;" class="goRight">向右走</a>
<div class="wrap">
  <ul>
    <li><img src="1.jpg" alt=""></li>
    <li><img src="2.jpg" alt=""></li>
    <li><img src="3.jpg" alt=""></li>
    <li><img src="4.jpg" alt=""></li>
    <li><img src="5.jpg" alt=""></li>
  </ul>
</div>
<script src="jquery-1.7.2.min.js"></script>
<script src="slider.js"></script>
</body>
</html>

slider.js

// 如果想要使一个元素运动起来,一般情况下这个元素须要具有position属性absolute/relative
$(function(){
  var oul = $('.wrap ul');
  var oulHtml = oul.html();
  oul.html(oulHtml+oulHtml)
  var timeId = null;
  var ali = $('.wrap ul li');
  var aliWidth = ali.eq(0).width();
  var aliSize = ali.size();
  var ulWidth = aliWidth*aliSize;
  oul.width(ulWidth); //1600px
  var speed = 2;
  function slider(){
    if(speed<0){
      if(oul.css('left')==-ulWidth/2+'px'){
      oul.css('left',0);
      }
      oul.css('left','+=-2px');
    }
    if(speed>0){
      if(oul.css('left')=='0px'){
      oul.css('left',-ulWidth/2+'px');
      }
      oul.css('left','+='+speed+'px');
    }
   }
  // setInterval()函数的作用是:每隔一段时间,执行该函数里的代码
   timeId = setInterval(slider,30);
  $('.wrap').mouseover(function(){
    // clearInterval()函数的作用是用来清除定时器
    clearInterval(timeId);
  });
  $('.wrap').mouseout(function(){
    timeId = setInterval(slider,30);
  });
  $('.goLeft').click(function(){
    speed=-2;
  });
  $('.goRight').click(function(){
    speed=2;
  });
});

效果图如下:

jQuery实现的多张图无缝滚动效果【测试可用】

希望本文所述对大家jQuery程序设计有所帮助。

Javascript 相关文章推荐
Javascript 定时器调用传递参数的方法
Nov 12 Javascript
ExtJS 工具栏 分页事件参数
Mar 05 Javascript
JavaScript 内置对象属性及方法集合
Jul 04 Javascript
$.each与$().each的区别示例介绍
Mar 20 Javascript
IScroll5 中文API参数说明和调用方法
May 21 Javascript
一个非常好用的文字滚动的案例,鼠标悬浮可暂停[两种方案任选]
Dec 01 Javascript
微信小程序 scroll-view组件实现列表页实例代码
Dec 14 Javascript
js仿百度音乐全选操作
Jan 13 Javascript
jquery设置css样式的多种方法(总结)
Feb 21 Javascript
vue-自定义组件传值的实例讲解
Sep 18 Javascript
基于Bootstrap和JQuery实现动态打开和关闭tab页的实例代码
Jun 10 jQuery
vue filter 完美时间日期格式的代码
Aug 14 Javascript
初识简单却不失优雅的Vue.js
Sep 12 #Javascript
jQuery实现简单的tab标签页效果
Sep 12 #Javascript
深入探讨Vue.js组件和组件通信
Sep 12 #Javascript
前端框架Vue.js中Directive知识详解
Sep 12 #Javascript
前端框架Vue.js构建大型应用浅析
Sep 12 #Javascript
jQuery过滤选择器用法示例
Sep 12 #Javascript
强大Vue.js组件浅析
Sep 12 #Javascript
You might like
人大复印资料处理程序_补充篇
2006/10/09 PHP
使用PHP遍历文件夹与子目录的函数代码
2011/09/26 PHP
php中$美元符号与Zen Coding冲突问题解决方法分享
2014/05/28 PHP
php经典算法集锦
2015/11/14 PHP
Yii2 中实现单点登录的方法
2018/03/09 PHP
如何取得中文输入的真实长度?
2006/06/24 Javascript
用jquery实现自定义风格的滑动条实现代码
2011/04/26 Javascript
html中table数据排序的js代码
2011/08/09 Javascript
让js弹出窗口居前显示的实现方法
2013/07/10 Javascript
JS连连看源码完美注释版(推荐)
2013/12/09 Javascript
javascript工厂方式定义对象
2014/12/26 Javascript
JavaScript获得指定对象大小的方法
2015/07/01 Javascript
微信小程序 自定义对话框实例详解
2017/01/20 Javascript
利用策略模式与装饰模式扩展JavaScript表单验证功能
2017/02/14 Javascript
微信小程序之分享页面如何返回首页的示例
2018/03/28 Javascript
浅谈Webpack 是如何加载模块的
2018/05/24 Javascript
小程序跨页面交互的作用与方法详解
2020/01/07 Javascript
Python里隐藏的“禅”
2014/06/16 Python
Django中对数据查询结果进行排序的方法
2015/07/17 Python
Python中的复制操作及copy模块中的浅拷贝与深拷贝方法
2016/07/02 Python
详谈python http长连接客户端
2017/06/12 Python
matplotlib设置legend图例代码示例
2017/12/19 Python
Python实现ping指定IP的示例
2018/06/04 Python
Python小进度条显示代码
2019/03/05 Python
python 初始化一个定长的数组实例
2019/12/02 Python
基于Html5 canvas实现裁剪图片和马赛克功能及又拍云上传图片 功能
2019/07/09 HTML / CSS
Java中的异常处理机制的简单原理和应用
2013/04/27 面试题
积极分子思想汇报
2014/01/04 职场文书
时尚休闲吧创业计划书
2014/01/25 职场文书
端午节活动策划方案
2014/03/09 职场文书
2014年班组建设工作总结
2014/12/01 职场文书
2014年扶贫帮困工作总结
2014/12/09 职场文书
JS继承最简单的理解方式
2021/03/31 Javascript
JS Object构造函数之Object.freeze
2021/04/28 Javascript
React 高阶组件HOC用法归纳
2021/06/13 Javascript
安装harbor作为docker镜像仓库的问题
2022/06/14 Servers