jQuery实现图片轮播效果代码


Posted in Javascript onSeptember 27, 2016

整理以前用jQuery实现的图片轮播效果。

 1. 不做操作时,自动轮播
 2. 鼠标悬浮在图片上时,停止自动轮播,隐藏在图片左右的箭头会显示出来
 3. 手动轮播1:鼠标指向图片底部的小标按钮,可以切换对应的图片
 4. 手动轮播2:点击左右箭头也可以切换图片

效果图:(PS:用软件捕捉的,不太会弄,感觉图片都失真了)

jQuery实现图片轮播效果代码

下面是代码区域:

**inde.html部分代码**

<div class="box">
 <ul class="img">
  <li class="photo"><a href="#"><img src="images/1.jpg" alt=""/></a></li>
  <li class="photo"><a href="#"><img src="images/2.jpg" alt=""/></a></li>
  <li class="photo"><a href="#"><img src="images/3.jpg" alt=""/></a></li>
  <li class="photo"><a href="#"><img src="images/4.jpg" alt=""/></a></li>
  <li class="photo"><a href="#"><img src="images/5.jpg" alt=""/></a></li>
  <li class="photo"><a href="#"><img src="images/6.jpg" alt=""/></a></li>
  <li class="photo"><a href="#"><img src="images/7.jpg" alt=""/></a></li>
 </ul>
 <div>
  <span class="jt" id="jtLeft"><</span>
  <span class="jt" id="jtRight">></span>
 </div>
 <div class="numList"></div>
</div>

**reset.css代码**

.box{
 padding:0;
 width: 800px;
 height: 500px; 
 margin: 0 auto;
 position:relative;
}
ul.img{
 padding:0;
 margin: 0 auto;
}
ul.img .photo{
 list-style: none;
 position: absolute; 
 display: none;
}
img{
 width: 800px;
 height: 500px;
}
.box .img .active{
 display: block;
}



.jt{
 width: 40px;
 height: 50px;
 background-color: rgba(0,0,0,0.5);
 position: absolute;
 top:50%;
 margin-top: -25px;
 line-height: 50px;
 font-size: 30px; 
 color: white;
 font-weight: 800;
 text-align: center; 
 display: none;
}
#jtRight{
 right: 0;
}


.numList{
 font-size: 0;
 position: absolute;
 bottom:10px;
 left: 50%;
 margin-left:-70px; 
}
.numList .num{
 background-color: black;
 width: 20px;
 height: 20px;
 border-radius: 50%;
 color: white;
 text-align: center;
 font-size: 14px;
 display: inline-block;
}
.numList .check{
 background-color: red;
}

**main.js代码**

$(function(){
 /*定义全局变量,用来记录表示显示的图片的下标*/
 var i=0;

 /*按图片的数量添加下标*/
 var size=$(".photo").size();
 for (var j=1;j<=size;j++){
  var span=$("<span class='num'>"+j+"</span>");
  $(".numList").append(span);
 }
 /*默认选中第一个下标和显示第一张图片*/
 $(".photo:eq(0)").addClass("active");
 $(".num:eq(0)").addClass("check");

 /*手动轮播*/
 var HandleImgChange=function(){
  $(".num").each(function(){
   $(this).mouseover(function(){
    $(this).siblings().removeClass("check");
    $(this).addClass("check");

    /*获得选择的下标值*/
    i=$(this).index();
    $(".photo").hide();
    $(".photo").eq(i).show();
   });
  });
 };

 /*显示下一张图*/
 var move=function(){
  i++;
  if(i>size-1){
   i=0;
  }
  $(".num").eq(i).addClass("check").siblings().removeClass("check");
  $(".photo").eq(i).show().siblings().hide();
 };

 /*自动轮播*/
 var AutoImgChange=function(){
  var t=setInterval(move,1000);
  $(".box").hover(function(){
   $(this).css({"cursor":"pointer"});
   $(".jt").css({"display":"block"});
   clearInterval(t);
  },function(){
   $(".jt").css({"display":"none"});
   t=setInterval(move,1000);
  })
 };

 /*设置左右箭头点击事件*/
 var jtL=function(){
  $("#jtLeft").click(function(){
   i--;
   if(i<0){
    i=size-1;
   }
   $(".num").eq(i).addClass("check").siblings().removeClass("check");
   $(".photo").eq(i).show().siblings().hide();
  })
 };
 var jtR=function(){
  $("#jtRight").click(function(){
   move();
  })
 };

 HandleImgChange();
 AutoImgChange();
 jtR();
 jtL();
});

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
浅析JavaScript中的CSS属性及命名规范
Nov 28 Javascript
Firefox下无法正常显示年份的解决方法
Sep 04 Javascript
jQuery满屏焦点图左右滚动特效代码分享
Sep 07 Javascript
AngularJs html compiler详解及示例代码
Sep 01 Javascript
jQuery EasyUI tree 使用拖拽时遇到的错误小结
Oct 10 Javascript
js return返回多个值,通过对象的属性访问方法
Feb 21 Javascript
js中document.referrer实现移动端返回上一页
Feb 22 Javascript
JS给按钮添加跳转功能类似a标签
May 30 Javascript
JavaScript通过mouseover()实现图片变大效果的示例
Dec 20 Javascript
微信小程序适配iphoneX的实现方法
Sep 18 Javascript
React 源码中的依赖注入方法
Nov 07 Javascript
js getBoundingClientRect使用方法详解
Jul 17 Javascript
JS不完全国际化&amp;本地化手册 之 理论篇
Sep 27 #Javascript
Javascript json object 与string 相互转换的简单实现
Sep 27 #Javascript
js转html实体的方法
Sep 27 #Javascript
JSON与String互转的实现方法(Javascript)
Sep 27 #Javascript
通过JS获取Request.QueryString()参数的值实现方法
Sep 27 #Javascript
微信小程序使用第三方库Underscore.js步骤详解
Sep 27 #Javascript
微信小程序使用第三方库Immutable.js实例详解
Sep 27 #Javascript
You might like
PHP比你想象的好得多
2014/11/27 PHP
thinkPHP内置字符串截取函数用法详解
2016/11/15 PHP
PHP中仿制 ecshop验证码实例
2017/01/06 PHP
php 判断IP为有效IP地址的方法
2018/01/28 PHP
tp框架(thinkPHP)实现三次登陆密码错误之后锁定账号功能示例
2018/05/24 PHP
使用Javascript和DOM Interfaces来处理HTML
2006/10/09 Javascript
PJBlog插件 防刷新的在线播放器
2006/10/25 Javascript
Javascript - HTML的request类
2007/01/09 Javascript
JQuery 国际象棋棋盘 实现代码
2009/06/26 Javascript
jquery中实现简单的tabs插件功能的代码
2011/03/02 Javascript
一个CSS+jQuery实现的放大缩小动画效果
2014/02/19 Javascript
js中的cookie的读写操作示例详解
2014/04/17 Javascript
jQuery内容过滤选择器用法分析
2015/02/10 Javascript
Ionic实现页面下拉刷新(ion-refresher)功能代码
2016/06/03 Javascript
关于在Servelet中如何获取当前时间的操作方法
2016/06/28 Javascript
javascript中json对象json数组json字符串互转及取值方法
2017/04/19 Javascript
javascript实现QQ空间相册展示源码
2017/12/12 Javascript
基于jQuery.i18n实现web前端的国际化
2018/05/04 jQuery
js实现无缝滚动双图切换效果
2019/07/09 Javascript
vue+element_ui上传文件,并传递额外参数操作
2020/12/05 Vue.js
python计数排序和基数排序算法实例
2014/04/25 Python
Python使用pylab库实现绘制直方图功能示例
2018/06/01 Python
Python版名片管理系统
2018/11/30 Python
使用Django连接Mysql数据库步骤
2019/01/15 Python
django框架模型层功能、组成与用法分析
2019/07/30 Python
Python编程快速上手——强口令检测算法案例分析
2020/02/29 Python
基于HTML5 FileSystem API的使用介绍
2013/04/24 HTML / CSS
加拿大著名的奢侈品购物网站:SSENSE(支持中文)
2020/06/25 全球购物
请解释在new与override的区别
2012/10/29 面试题
JPA的优势都有哪些
2013/07/04 面试题
五型班组建设方案
2014/02/10 职场文书
优秀本科生求职推荐信
2014/02/24 职场文书
大学生英语演讲稿
2014/04/24 职场文书
飞机制造技术专业求职信
2014/07/27 职场文书
python3 sqlite3限制条件查询的操作
2021/04/07 Python
SpringBoot系列之MongoDB Aggregations用法详解
2022/02/12 MongoDB