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中filter(),not(),split()使用方法
Jul 06 Javascript
javascript数组快速打乱重排的方法
Jan 02 Javascript
jQuery基于图层模仿五星星评价功能的方法
May 07 Javascript
jQuery之动画效果大全
Nov 09 Javascript
将JSON字符串转换成Map对象的方法
Nov 30 Javascript
ES6学习之变量的两种命名方法示例
Jul 18 Javascript
javascript自定义事件功能与用法实例分析
Nov 08 Javascript
webpack4+Vue搭建自己的Vue-cli项目过程分享
Aug 29 Javascript
Node.js 如何利用异步提升任务处理速度
Jan 07 Javascript
vue2.0自定义指令示例代码详解
Apr 25 Javascript
详解Vue的ref特性的使用
Jan 24 Javascript
Node.js API详解之 string_decoder用法实例分析
Apr 29 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 socket方式提交的post详解
2008/07/19 PHP
php的GD库imagettftext函数解决中文乱码问题
2015/01/24 PHP
解决更换PHP5.4以上版本后Dedecms后台登录空白问题的方法
2015/10/23 PHP
PHP中使用mpdf 导出PDF文件的实现方法
2018/10/22 PHP
php原生数据库分页的代码实例
2019/02/18 PHP
在jQuery ajax中按钮button和submit的区别分析
2012/10/07 Javascript
从jquery的过滤器.filter()方法想到的
2013/09/29 Javascript
如何获取select下拉框的值(option没有及有value属性)
2013/11/08 Javascript
JS实现样式清新的横排下拉菜单效果
2015/10/09 Javascript
JavaScript生成验证码并实现验证功能
2016/09/24 Javascript
完美解决jQuery的hover事件在IE中不停闪动的问题
2017/02/10 Javascript
jQuery导航条固定定位效果实例代码
2017/05/26 jQuery
解决JSON.stringify()自动将中文转译成unicode的问题
2018/01/05 Javascript
详解微信小程序之一键复制到剪切板
2019/04/24 Javascript
bootstrap-table+treegrid实现树形表格
2019/07/26 Javascript
Vue项目移动端滚动穿透问题的实现
2020/05/19 Javascript
Vuex的热更替如何实现
2020/06/05 Javascript
jQuery编写QQ简易聊天框
2020/08/27 jQuery
js实现日历
2020/11/07 Javascript
介绍Python中的__future__模块
2015/04/27 Python
python基于urllib实现按照百度音乐分类下载mp3的方法
2015/05/25 Python
详解Python 序列化Serialize 和 反序列化Deserialize
2017/08/20 Python
python实现txt文件格式转换为arff格式
2018/05/31 Python
django 将model转换为字典的方法示例
2018/10/16 Python
Python 互换字典的键值对实例
2019/02/12 Python
Win10环境python3.7安装dlib模块趟过的坑
2019/08/01 Python
tensorflow常用函数API介绍
2020/04/19 Python
马德里运动鞋商店:Nigra Mercato
2020/02/16 全球购物
烹饪自我鉴定
2014/03/01 职场文书
销售经理竞聘书
2014/03/31 职场文书
汽车销售员岗位职责
2015/04/11 职场文书
在人间读书笔记
2015/06/30 职场文书
2015年秋学期教研工作总结
2015/10/14 职场文书
《穷人》教学反思
2016/02/19 职场文书
Python入门之使用pandas分析excel数据
2021/05/12 Python
Golang流模式之grpc的四种数据流
2022/04/13 Golang