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 相关文章推荐
JSON 教程 json入门学习笔记
Sep 22 Javascript
JS获取节点的兄弟,父级,子级元素的方法
Jan 09 Javascript
详解AngularJS中的作用域
Jun 17 Javascript
js与applet相互调用的方法
Jun 22 Javascript
jquery把int类型转换成字符串类型的方法
Oct 07 Javascript
JavaScript中全选、全不选、反选、无刷新删除、批量删除、即点即改入库(在yii框架中操作)的代码分享
Nov 01 Javascript
基于JavaScript实现购物车功能
Feb 07 Javascript
jQuery插件FusionCharts实现的MSBar2D图效果示例【附demo源码】
Mar 24 jQuery
利用jQuery异步上传文件的插件用法详解
Jul 19 jQuery
详解给Vue2路由导航钩子和axios拦截器做个封装
Apr 10 Javascript
vue 动态给每个页面添加title、关键词和描述的方法
Aug 28 Javascript
vue+echarts+datav大屏数据展示及实现中国地图省市县下钻功能
Nov 16 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
php获取url字符串截取路径的文件名和扩展名的函数
2010/01/22 PHP
回帖脱衣服的图片实现代码
2014/02/15 PHP
PHP实现AES256加密算法实例
2014/09/22 PHP
PHP基于Closure类创建匿名函数的方法详解
2017/08/17 PHP
JQuery 学习笔记 选择器之三
2009/07/23 Javascript
关于二级域名下使用一级域名下的COOKIE的问题
2011/11/07 Javascript
JS获取select-option-text_value的方法
2013/12/26 Javascript
jquery文档操作wrap()方法实例简述
2015/01/10 Javascript
JavaScript实现99乘法表及隔行变色实例代码
2016/02/24 Javascript
浅谈javascript中的call、apply、bind
2016/03/06 Javascript
浅析JavaScript中命名空间namespace模式
2016/06/22 Javascript
jQuery mobile在页面加载时添加加载中效果 document.ready 和window.onload执行顺序比较
2016/07/14 Javascript
canvas绘制七巧板
2017/02/03 Javascript
JS验证输入的是否是数字及保留几位小数问题
2018/05/09 Javascript
node.js使用express框架进行文件上传详解
2019/03/03 Javascript
微信js-sdk 录音功能的示例代码
2019/11/01 Javascript
node事件循环和process模块实例分析
2020/02/14 Javascript
js函数柯里化的方法和作用实例分析
2020/04/11 Javascript
vue+element实现图片上传及裁剪功能
2020/06/29 Javascript
python获取mp3文件信息的方法
2015/06/15 Python
python去除文件中空格、Tab及回车的方法
2016/04/12 Python
python中MethodType方法介绍与使用示例
2017/08/03 Python
python调用Delphi写的Dll代码示例
2017/12/05 Python
pandas 读取各种格式文件的方法
2018/06/22 Python
使用PM2+nginx部署python项目的方法示例
2018/11/07 Python
nginx+uwsgi+django环境搭建的方法步骤
2019/11/25 Python
基于python3抓取pinpoint应用信息入库
2020/01/08 Python
利用pytorch实现对CIFAR-10数据集的分类
2020/01/14 Python
Django全局启用登陆验证login_required的方法
2020/06/02 Python
python 如何用urllib与服务端交互(发送和接收数据)
2021/03/04 Python
世界上最全面的汽车零部件和配件集合:JC Whitney
2016/09/04 全球购物
Kate Spade澳大利亚官方网站:美国设计师手袋品牌
2019/09/10 全球购物
国培教师自我鉴定
2014/02/12 职场文书
艺术节主持词
2014/04/02 职场文书
办护照工作证明
2014/10/01 职场文书
Python还能这么玩之用Python修改了班花的开机密码
2021/06/04 Python