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 相关文章推荐
js中的eventType事件及其浏览器支持性介绍
Nov 29 Javascript
JavaScript检查数字是否为整数或浮点数的方法
Jun 09 Javascript
jQuery根据用户电脑是mac还是pc加载对应样式的方法
Jun 26 Javascript
JavaScript类继承及实例化的方法
Jul 25 Javascript
indexedDB bootstrap angularjs之 MVC DOMO (应用示例)
Jun 20 Javascript
基于vue2.0+vuex的日期选择组件功能实现
Mar 13 Javascript
react.js CMS 删除功能的实现方法
Apr 17 Javascript
vue+axios实现登录拦截的实例代码
May 22 Javascript
angular内置provider之$compileProvider详解
Sep 27 Javascript
微信小程序实现获取用户信息并存入数据库操作示例
May 07 Javascript
微信小程序实现侧边栏分类
Oct 21 Javascript
JavaScript, select标签元素左右移动功能实现
May 14 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
php将gd生成的图片缓存到memcache的小例子
2013/06/05 PHP
JavaScript 编写匿名函数的几种方法
2010/02/21 Javascript
jQuery对Select的操作大集合(收藏)
2013/12/28 Javascript
jQuery 回调函数(callback)的使用和基础
2015/02/26 Javascript
JS实现图片放大镜效果的方法
2015/02/27 Javascript
JavaScript中的立即执行函数表达式介绍
2015/03/15 Javascript
javascript遇到html5的一些表单属性
2015/07/05 Javascript
谈谈JSON对象和字符串之间的相互转换JSON.stringify(obj)和JSON.parse(string)
2015/10/01 Javascript
JavaScript学习笔记整理_简单实现枚举类型,扑克牌应用
2016/09/19 Javascript
layui select动态添加option的实例
2018/03/07 Javascript
JS实现模糊查询带下拉匹配效果
2018/06/21 Javascript
小程序最新获取用户昵称和头像的方法总结
2019/09/23 Javascript
vue el-table实现行内编辑功能
2019/12/11 Javascript
vue项目前端微信JSAPI与外部H5支付相关实现过程及常见问题
2020/04/14 Javascript
原生js滑动轮播封装
2020/07/31 Javascript
[04:03]2014DOTA2西雅图国际邀请赛 LGD战队巡礼
2014/07/07 DOTA
[00:52]黑暗之门更新 新英雄孽主驾临DOTA2
2016/08/24 DOTA
机器学习python实战之手写数字识别
2017/11/01 Python
Python实现霍夫圆和椭圆变换代码详解
2018/01/12 Python
如何安装多版本python python2和python3共存以及pip共存
2018/09/18 Python
Python3.5文件读与写操作经典实例详解
2019/05/01 Python
Python 调用 Windows API COM 新法
2019/08/22 Python
open_basedir restriction in effect. 原因与解决方法
2021/03/14 PHP
如何在Canvas上的图形/图像绑定事件监听的实现
2020/09/16 HTML / CSS
英文翻译的自我评价语句
2013/10/04 职场文书
给领导的致歉信范文
2014/01/13 职场文书
毕业生求职信的经典写法
2014/01/31 职场文书
转让协议书范本
2014/04/15 职场文书
应届大学生求职信
2014/07/20 职场文书
缓刑人员思想汇报
2014/10/11 职场文书
2014年政教处工作总结
2014/12/20 职场文书
2015年教师党员个人总结
2015/11/24 职场文书
SpringBoot集成Redis,并自定义对象序列化操作
2021/06/22 Java/Android
spring boot中nativeQuery的用法
2021/07/26 Java/Android
MySQ InnoDB和MyISAM存储引擎介绍
2022/04/26 MySQL
MySQL串行化隔离级别(间隙锁实现)
2022/06/16 MySQL