jQuery图片左右滚动代码 有左右按钮实例


Posted in Javascript onJune 20, 2016

用jquery封装了一个控制图片左右滚动的插件,有左右按钮可以点击实现图片滚动效果。

代码如下:

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>slide</title>
<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/1.6.2/jquery.min.js"></script><br><style>
* {
  padding:0;
  margin:0;
  list-style: none
}
img{
  border: none
}
#img-slider, #img-slider-2 {
  position: relative;
  width: 560px;
  height: 80px;
}
.slider-wrap {
  width: 480px;/*width的值要跟所有的li宽度总和一样*/
  overflow: hidden;
  position: relative;
  height: 150px;
  margin-left: 40px;
}
.slider-wrap ul {
  zoom: 1;
  position: absolute;
  left: 0;
  top: 0;
  width: 9999px;
}
.slider-wrap ul li {
  float: left;
  width: 120px;
  text-align: center;
  padding: 5px 0;
}
#prev, #next {
  position: absolute;
  top: 30px;
  left: 0px;
  width: 40px
}
#next {
  left: auto;
  right: 0px
}
</style><br><script type="text/javascript">
$(function () {
  $("#img-slider").imgScroll();
  $("#img-slider-2").imgScroll();
 
});
 
/*插件*/
(function ($) {
  $.fn.imgScroll = function () {
    var isDone = false,
      scrollBox = $(this),
      prevBtn = scrollBox.find("#prev"),
      nextBtn = scrollBox.find("#next"),
      imgBox = scrollBox.find("ul"),
      next_over = imgBox.find("li").width() * imgBox.find("li").length,
      slide_width = $(".slider-wrap").width();
           
    return this.each(function(){
      function setOpacity() {
        imgBox.animate({
          opacity: 1
        }, 800,function(){
          isDone = false;
        })
      }
      function scrollNext() {
        if(!isDone && next_over + parseInt(imgBox.css("left"),10) > slide_width){
          isDone = true;
          imgBox.animate({
            left: "+=" + "-" + slide_width,
            opacity: 0.5
          }, 800, setOpacity);
        }
        //isDone = false  
      }
      function scrollPrev() {
        if(!imgBox.is(':animated') && parseInt(imgBox.css("left"),10) !=0){
          imgBox.animate({
            left: "+=" + slide_width,//不断左移
            opacity: 0.5
          }, 800, setOpacity);
     
        }
      }
      prevBtn.bind('click', scrollPrev); //向前滚动
      nextBtn.bind('click', scrollNext); //向后滚动
       
       
    })
 }
})(jQuery);
</script>
</head>
 
<body>
<div id="img-slider">
 <button id="prev">prev</button>
 <div class="slider-wrap">
  <ul>
   <li><a href="#"><img src="https://3water.com/images/logo.gif" width="100"/></a></li>
   <li><a href="#"><img src="https://3water.com/images/logo.gif" width="100"/></a></li>
   <li><a href="#"><img src="https://3water.com/images/logo.gif" width="100"/></a></li>
   <li><a href="#"><img src="https://3water.com/images/logo.gif" width="100"/></a></li>
   <li><a href="#"><img src="https://3water.com/images/logo.gif" width="100"/></a></li>
   <li><a href="#"><img src="https://3water.com/images/logo.gif" width="100"/></a></li>
  </ul>
 </div>
 <button id="next">next</button>
</div>
 
<div id="img-slider-2">
 <button id="prev">prev</button>
 <div class="slider-wrap">
  <ul>
   <li><a href="#"><img src="https://3water.com/images/logo.gif" width="100"/></a></li>
   <li><a href="#"><img src="https://3water.com/images/logo.gif" width="100"/></a></li>
   <li><a href="#"><img src="https://3water.com/images/logo.gif" width="100"/></a></li>
   <li><a href="#"><img src="https://3water.com/images/logo.gif" width="100"/></a></li>
   <li><a href="#"><img src="https://3water.com/images/logo.gif" width="100"/></a></li>
   <li><a href="#"><img src="https://3water.com/images/logo.gif" width="100"/></a></li>
  </ul>
 </div>
 <button id="next">next</button>
</div>
 
</body>
</html>

大家可以直接复制上面的代码,保存成html测试。

以上就是本文的全部内容,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery中的sortable排序之后的保存状态的解决方法
Jan 28 Javascript
基于jquery的监控数据是否发生改变
Apr 11 Javascript
MVVM模式中ViewModel和View、Model有什么区别?
Jun 19 Javascript
判断输入的字符串是否是日期格式的简单方法
Jul 11 Javascript
轻松5句话解决JavaScript的作用域
Jul 15 Javascript
JavaScript读二进制文件并用ajax传输二进制流的方法
Jul 18 Javascript
详解vue2.0 transition 多个元素嵌套使用过渡
Jun 19 Javascript
关于Vue.nextTick()的正确使用方法浅析
Aug 25 Javascript
jQuery实现获取table中鼠标click点击位置行号与列号的方法
Oct 09 jQuery
vue实现键盘输入支付密码功能
Aug 18 Javascript
JS中比较两个Object数组是否相等方法实例
Nov 11 Javascript
JavaScript使用百度ECharts插件绘制饼图操作示例
Nov 26 Javascript
JavaScript操作表单实例讲解(上)
Jun 20 #Javascript
jquery 获取select数组与name数组长度的实现代码
Jun 20 #Javascript
JavaScript提升性能的常用技巧总结【经典】
Jun 20 #Javascript
使用jQuery给input标签设置默认值
Jun 20 #Javascript
js中获取时间new Date()的全面介绍
Jun 20 #Javascript
AngularJs Javascript MVC 框架
Jun 20 #Javascript
jQuery 限制输入字符串长度
Jun 20 #Javascript
You might like
Windows下IIS6/Apache2.2.4+MySQL5.2+PHP5.2.1安装配置方法
2007/05/03 PHP
php日期转时间戳,指定日期转换成时间戳
2012/07/17 PHP
php操纵mysqli数据库的实现方法
2016/09/18 PHP
jquery 表单进行客户端验证demo
2009/08/24 Javascript
JS实现标签页效果(配合css)
2013/04/03 Javascript
JQuery中form验证出错信息的查看方法
2013/10/08 Javascript
window.open()详解及浏览器兼容性问题示例探讨
2014/05/29 Javascript
浅谈JavaScript超时调用和间歇调用
2015/08/30 Javascript
jQuery日程管理控件glDatePicker用法详解
2017/03/29 jQuery
实例解析Vue.js下载方式及基本概念
2018/05/11 Javascript
vue3.0 CLI - 1 - npm 安装与初始化的入门教程
2018/09/14 Javascript
JavaScript 对引擎、运行时、调用堆栈的概述理解
2018/10/22 Javascript
angular中如何绑定iframe中src的方法
2019/02/01 Javascript
Javascript的this详解
2019/03/23 Javascript
TypeScript中的方法重载详解
2019/04/12 Javascript
vue父子组件通信的高级用法示例
2019/08/29 Javascript
react+antd 递归实现树状目录操作
2020/11/02 Javascript
简单使用Python自动生成文章
2014/12/25 Python
深入解析Python编程中super关键字的用法
2016/06/24 Python
Python科学计算包numpy用法实例详解
2018/02/08 Python
对Tensorflow中的变量初始化函数详解
2018/07/27 Python
Django 路由控制的实现代码
2018/11/08 Python
Python爬虫回测股票的实例讲解
2021/01/22 Python
如何用 Python 制作一个迷宫游戏
2021/02/25 Python
HTML5 实战PHP之Web页面表单设计
2011/10/09 HTML / CSS
HTML5之SVG 2D入门3—文本与图像及渲染文本介绍
2013/01/30 HTML / CSS
详解px单位html5响应式方案
2018/03/08 HTML / CSS
迪卡侬印尼体育用品商店:Decathlon印尼
2020/03/11 全球购物
茱莉蔻美国官网:Jurlique美国
2020/11/24 全球购物
网络安全方面的面试题
2016/01/07 面试题
小学教师的个人自我鉴定
2013/10/24 职场文书
便利店促销方案
2014/02/20 职场文书
现实表现材料范文
2014/12/23 职场文书
党员转正介绍人意见
2015/06/03 职场文书
JS监听Esc 键触发事键
2021/04/14 Javascript
深入解析Apache Hudi内核文件标记机制
2022/03/31 Servers