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 相关文章推荐
ASP.NET jQuery 实例6 (实现CheckBoxList成员全选或全取消)
Jan 13 Javascript
Javascript 鼠标移动上去 滑块跟随效果代码分享
Nov 23 Javascript
js中opener与parent的区别详细解析
Jan 14 Javascript
使用jsonp完美解决跨域问题
Nov 27 Javascript
前端微信支付js代码
Jul 25 Javascript
vue.js学习笔记之绑定style样式和class列表
Oct 31 Javascript
jquery滚动条插件(可以自定义)
Dec 11 Javascript
详解AngularJS验证、过滤器、指令
Jan 04 Javascript
Vue.js实战之组件的进阶
Apr 04 Javascript
vue实现文件上传功能
Aug 13 Javascript
javascript canvas API内容整理
Feb 16 Javascript
JavaScript async/await原理及实例解析
Dec 02 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
自动把纯文本转换成Web页面的php代码
2009/08/27 PHP
php checkbox 取值详细说明
2010/08/19 PHP
php实现图片添加水印功能
2014/02/13 PHP
PHP中set error handler函数用法小结
2015/11/11 PHP
PHP完全二叉树定义与实现方法示例
2017/10/09 PHP
event.srcElement+表格应用
2006/08/29 Javascript
javascript indexOf函数使用说明
2008/07/03 Javascript
动态表格Table类的实现
2009/08/26 Javascript
跟着JQuery API学Jquery 之二 属性
2010/04/09 Javascript
js字符编码函数区别分析
2011/12/28 Javascript
JS左右无缝滚动(一般方法+面向对象方法)
2012/08/17 Javascript
jquery SweetAlert插件实现响应式提示框
2015/08/18 Javascript
浅析Javascript中bind()方法的使用与实现
2016/04/29 Javascript
Bootstrap表单布局样式代码
2016/05/31 Javascript
jQuery中text() val()和html()的区别实例详解
2016/06/28 Javascript
JavaScript正则表达式替换字符串中图片地址(img src)的方法
2017/01/13 Javascript
jQuery获取Table某列的值(推荐)
2017/03/03 Javascript
JavaScript限制在客户区可见范围的拖拽(解决scrollLeft和scrollTop的问题)(2)
2017/05/17 Javascript
JavaScript实现移动端页面按手机屏幕分辨率自动缩放的最强代码
2017/08/18 Javascript
JS验证码实现代码
2017/09/14 Javascript
p5.js入门教程之鼠标交互的示例
2018/03/16 Javascript
jQuery实现参数自定义的文字跑马灯效果
2018/08/15 jQuery
JS获取动态添加元素的方法详解
2019/07/31 Javascript
vue 使用vant插件做tabs切换和无限加载功能的实现
2020/11/04 Javascript
Python采用Django制作简易的知乎日报API
2016/08/03 Python
Python学习pygal绘制线图代码分享
2017/12/09 Python
python3 发送任意文件邮件的实例
2018/01/23 Python
python列表使用实现名字管理系统
2019/01/30 Python
python数据预处理方式 :数据降维
2020/02/24 Python
wedgwood加拿大官网:1759年成立的英国国宝级陶瓷餐具品牌
2018/07/17 全球购物
中学实习教师自我鉴定
2013/12/12 职场文书
问卷调查计划书
2014/01/10 职场文书
2014年国庆节活动总结
2014/08/26 职场文书
大学毕业生个人总结
2015/02/28 职场文书
2015年数学教师工作总结
2015/05/20 职场文书
话题作文之自信作文
2019/11/15 职场文书