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 相关文章推荐
Input 特殊事件onpopertychange和oninput
Jun 17 Javascript
关于Aptana Studio生成自动备份文件的解决办法
Dec 23 Javascript
javascript之querySelector和querySelectorAll使用说明
Oct 09 Javascript
jquery跟js初始化加载的多种方法及区别介绍
Apr 02 Javascript
JavaScript实现生成GUID(全局统一标识符)
Sep 05 Javascript
用jquery模仿的a的title属性的例子
Oct 22 Javascript
jQuery中:disabled选择器用法实例
Jan 04 Javascript
详解AngularJS中的filter过滤器用法
Jan 04 Javascript
Bootstrap源码解读导航(6)
Dec 23 Javascript
基于jquery的on和click的区别详解
Jan 15 jQuery
axios拦截设置和错误处理方法
Mar 05 Javascript
jquery实现简单拖拽效果
Jul 20 jQuery
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
电脑硬件及电脑配置知识大全
2020/03/17 数码科技
PHP自动更新新闻DIY
2006/10/09 PHP
PHP安全配置
2006/12/06 PHP
从性能方面考虑PHP下载远程文件的3种方法
2015/12/29 PHP
Yii2 queue的队列使用详解
2019/07/19 PHP
Laravel框架实现即点即改功能的方法分析
2019/10/31 PHP
新浪中用来显示flash的函数
2007/04/02 Javascript
JavaScript游戏之是男人就下100层代码打包
2010/11/08 Javascript
基于jquery的固定表头和列头的代码
2012/05/03 Javascript
Jquery通过Ajax方式来提交Form表单的具体实现
2013/11/07 Javascript
jQuery移动端日期(datedropper)和时间(timedropper)选择器附源码下载
2016/04/19 Javascript
jQuery操作动态生成的内容的方法
2016/05/28 Javascript
js窗口震动小程序分享
2016/11/28 Javascript
JS定时器用法分析【时钟与菜单中的应用】
2016/12/21 Javascript
VUE中的无限循环代码解析
2017/09/22 Javascript
vue.js,ajax渲染页面的实例
2018/02/11 Javascript
关于ES6箭头函数中的this问题
2018/02/27 Javascript
nodeJs爬虫的技术点总结
2018/05/13 NodeJs
vue.js轮播图组件使用方法详解
2018/07/03 Javascript
JavaScript实现的级联算法示例【省市二级联动功能】
2018/12/25 Javascript
JSON字符串操作移除空串更改key/value的介绍
2019/01/05 Javascript
[03:49]显微镜下的DOTA2第十五期—VG登基之路完美团
2014/06/24 DOTA
python 设置文件编码格式的实现方法
2017/12/21 Python
python中itertools模块zip_longest函数详解
2018/06/12 Python
python小程序之4名牌手洗牌发牌问题解析
2020/05/15 Python
澳大利亚在线高跟鞋商店:Shoe Me
2019/11/19 全球购物
RealTek面试题
2016/06/28 面试题
CLR与IL分别是什么含义
2016/08/23 面试题
创联软件面试题笔试题
2012/10/07 面试题
优秀教师事迹简介
2014/02/02 职场文书
企业管理标语
2014/06/10 职场文书
竞选大队干部演讲稿
2014/09/11 职场文书
乡镇党员群众路线教育实践活动对照检查材料思想汇报
2014/10/05 职场文书
地陪导游欢迎词
2015/01/26 职场文书
银行自荐信怎么写
2015/03/05 职场文书
60条职场经典语录,总有一条能触动你的心
2019/08/21 职场文书