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 相关文章推荐
IE6 fixed的完美解决方案
Mar 31 Javascript
js中生成map对象的方法
Jan 09 Javascript
小米公司JavaScript面试题
Dec 29 Javascript
JavaScript中的anchor()方法使用详解
Jun 08 Javascript
javascript验证手机号和实现星号(*)代替实例
Aug 16 Javascript
基于JavaScript实现评论框展开和隐藏功能
Aug 25 Javascript
详解如何在angular2中获取节点
Nov 23 Javascript
AngularJs 禁止模板缓存的方法
Nov 28 Javascript
详解使用VueJS开发项目中的兼容问题
Aug 02 Javascript
实例详解ztree在vue项目中使用并且带有搜索功能
Aug 24 Javascript
详解vantUI框架在vue项目中的应用踩坑
Dec 06 Javascript
在JavaScript中使用严格模式(Strict Mode)
Jun 13 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
解析ajax事件的调用顺序
2013/06/17 PHP
PHP版本升级到7.x后wordpress的一些修改及wordpress技巧
2015/12/25 PHP
php从身份证获取性别和出生年月
2017/02/09 PHP
laravel 根据不同组织加载不同视图的实现
2019/10/14 PHP
javascript 自动转到命名锚记
2009/01/10 Javascript
Javascript 设计模式(二) 闭包
2010/05/26 Javascript
javascript中关于break,continue的特殊用法与介绍
2012/05/24 Javascript
JavaScript字符串对象toUpperCase方法入门实例(用于把字母转换为大写)
2014/10/17 Javascript
jQuery中mouseover事件用法实例
2014/12/26 Javascript
微信 java 实现js-sdk 图片上传下载完整流程
2016/10/21 Javascript
jquery广告无缝轮播实例
2017/01/05 Javascript
jquery表单验证插件validation使用方法详解
2017/01/20 Javascript
js面向对象编程总结
2017/02/16 Javascript
JavaScript中object和Object的区别(详解)
2017/02/27 Javascript
JavaScript之iterable_动力节点Java学院整理
2017/06/29 Javascript
微信小程序开发之改变data中数组或对象的某一属性值
2018/07/05 Javascript
RequireJS用法简单示例
2018/08/20 Javascript
微信小程序实现slideUp、slideDown滑动效果及点击空白隐藏功能示例
2018/12/11 Javascript
自定义Vue组件打包、发布到npm及使用教程
2019/05/22 Javascript
Vue项目vscode 安装eslint插件的方法(代码自动修复)
2020/04/15 Javascript
详解uniapp的全局变量实现方式
2021/01/11 Javascript
[00:48]DOTA2国际邀请赛公开赛报名开始 扫码开启逐梦之旅
2018/06/06 DOTA
关于numpy中np.nonzero()函数用法的详解
2017/02/07 Python
详解python读取image
2019/04/03 Python
python将字符串转换成json的方法小结
2019/07/09 Python
python GUI库图形界面开发之PyQt5计数器控件QSpinBox详细使用方法与实例
2020/02/28 Python
Python图片处理模块PIL操作方法(pillow)
2020/04/07 Python
Opencv+Python识别PCB板图片的步骤
2021/01/07 Python
基于css3 animate制作绚丽的动画效果
2015/11/24 HTML / CSS
CSS3 二级导航菜单的制作的示例
2018/04/02 HTML / CSS
德国拖鞋网站:German Slippers
2019/11/08 全球购物
班子四风对照检查材料
2014/08/21 职场文书
清明节寄语2015
2015/03/23 职场文书
工资证明范本
2015/06/12 职场文书
React实现动效弹窗组件
2021/06/21 Javascript
漫画「你在春天醒来」第10卷封面公开
2022/03/21 日漫