思想:黑框设置超出部分隐藏。

红框往左移动,通过判断红框左边框距离黑框左边框的像素值,来实现红框的移动。

绿框在最上层,放每张图片的说明和序号。

一:html部分(大框、图片部分、箭头部分、图片介绍部分、图片序号部分)

  1. <div id="lunbo"><!--1轮播部分-->
  2. <ul class="imglist"><!--2图片部分-->
  3. <li><img src="data:image/datu1.jpg"/></li>
  4. <li><img src="data:image/datu2.jpg"/></li>
  5. <li><img src="data:image/datu3.jpg"/></li>
  6. </ul>
  7.  
  8. <img src="data:image/360截图20170227102950953.png" id="prev"/><!--3箭头图标-->
  9. <img src="data:image/360截图20170227103041047.png" id="next"/>
  10.  
  11. <ul class="infolist"><!--4图片介绍部分-->
  12. <li class="infoon">111111</li>
  13. <li>222222</li>
  14. <li>333333</li>
  15. </ul>
  16.  
  17. <ul class="indexlist"><!--5图片序号-->
  18. <li class="indexon">1</li>
  19. <li>2</li>
  20. <li>3</li>
  21. </ul>
  22. </div>

二:样式表设置

  1. 大框部分
    #lunbo{position: relative;width: 1320px;height: 426px;overflow: hidden;}
    图片部分:宽度的设置是几张图加起来的总宽度,并设层
    .imglist{position: relative;width: 4000px;height: 426px;overflow: hidden;z-index:;}
  2. .imglist li{float: left;display: inline;}/*display:inline;是把元素设为块级元素,在一行内显示*/把每张图设为块级元素,并往左流
    箭头部分:比图片的层要高一点
    #prev{position:relative;z-index:;top: -280px;left: 10px;}
  3. #next{position:relative;z-index:;top: -280px;right: 10px;float:right;}
    图片部分介绍:比箭头的层数高
    .infolist{position: relative;z-index:;top: -180px;left: 10px;}
  4. .infolist li{display: none;}/*让所有介绍都先隐藏*/
  5. .infolist .infoon{display: inline;color: black;}/*设置一个样式,用js控制,哪个选中,给哪个加上这个样式*/
    图片序号部分:
    .indexlist{position: relative;z-index:;top: -180px;right: 10px;float: right;}
  6. .indexlist li{float: left;margin-right: 5px;padding:2px 4px;border: 2px solid black;background-color: grey;cursor:pointer;list-style:none;}
  7. .indexlist .indexon{background-color: red;color: white;font-weight: bold;}/*设置一个样式,用js控制,哪个图片选中,给哪个加上这个样式*/

三:jquery部分

思想:定义一个变量,贯穿js的始终,初始curindex=0;

定义两个方法:1.changeto()方法:移动整个图片容器、给选中的图片加infoon和indexon样式

2.autuochange()方法:重新启用定时器

取图片的个数;

定义一个定时器,通过判断变量curindex与图片个数-1比较的值,给curindex赋新值,再调用changeto()方法;

定义鼠标划入划出与点击事件:划入清除定时器,划出重新启用定时器;点击:判断curindex的值,相应的加减1;

1.$().hover(function(){鼠标移上时执行的代码},function(){鼠标移开时之行动的代码});

2.$().animate({参数1,参数2});

该方法通过CSS样式将元素从一个状态改变为另一个状态。CSS属性值是逐渐改变的,这样就可以创建动画效果。

参数1:是样式,例如:$(".imglist").animate({left:"-"+1000+"px"});

参数2:可选。规定动画的速度。默认是 "normal"。

3.$().find();例如:$("p").find("span").css('color','red');搜索所有p标签中的后代 span 元素,并将其颜色设置为红色;

  1. <script type="text/javascript">
  2. var curindex=0;
  3. imglen=$(".imglist li").length;
  4.  
  5. var autochange=setInterval(function(){
  6. if(curindex<imglen-1)
  7. {
  8. curindex++;
  9. }else
  10. {
  11. curindex=0;
  12. }
  13. changeto(curindex);
  14. },2500);
  15.  
  16. /*左箭头划入划出效果*/
  17. /*划入划出*/
  18. $("#prev").hover(function(){
  19. clearInterval(autochange);
  20. },function(){
  21. autochangeagain();
  22. });
  23. /*点击*/
  24. $("#prev").click(function(){
  25. curindex=(curindex>0)?(curindex-1):(imglen-1);
  26. changeto(curindex);
  27. })
  28.  
  29. /*右箭头划入划出效果*/
  30. /*划入划出*/
  31. $("#next").hover(function(){
  32. clearInterval(autochange);
  33. },function(){
  34. autochangeagain();
  35. });
  36. /*点击*/
  37. $("#next").click(function(){
  38. curindex=(curindex<imglen-1)?(curindex+1):0;
  39. changeto(curindex);
  40. })
  41.  
  42. function changeto(n)
  43. {
  44. var goleft=n*1440;
  45. $(".imglist").animate({left:"-"+goleft+"px"});
  46. $(".infolist").find("li").removeClass("infoon");
  47. $(".infolist").find("li").eq(n).addClass("infoon");
  48. $(".indexlist").find("li").removeClass("indexon");
  49. $(".indexlist").find("li").eq(n).addClass("indexon");
  50.  
  51. }
  52.  
  53. function antuochangeagain()
  54. {
  55. autochange=setInterval(function(){
  56. if(curindex<imglen-1)
  57. {
  58. curindex++;
  59. }else
  60. {
  61. curindex=0;
  62. }
  63. changeto(curindex);
  64. },2500);
  65. }
  66. </script>

JQUERY写大图轮播;附jquery的hover()方法、animate()方法、find()方法的更多相关文章

  1. 用jQuery写的轮播图

    效果图: GitHub地址:https://github.com/123456abcdefg/Javascript 大家可以下载源码查看. 与前一篇写的轮播图实现的效果一致,这个是用jQuery写的, ...

  2. jQuery实现大图轮播

    css样式: *{    margin: 0;    padding: 0;}ul{    list-style:none;}.slideShow{    width: 620px;    heigh ...

  3. 记录一下自己用jQuery写的轮播图

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  4. PgwSlideshow-基于Jquery的图片轮播插件

    0 PgwSlideshow简介 PgwSlideshow是一款基于Jquery的图片轮播插件,基本布局分为上下结构,上方为大图轮播区域,用户可自定义图片轮播切换的间隔时间,也可以通过单击左右方向按键 ...

  5. jquery实现导航图轮播

    版权声明:作者原创,转载请注明出处! 下面的几个栗子是使用jquery实现Banner轮播的效果,直接将代码贴出来,从最初级没有任何优化和封装的写法,一直到最后一个栗子,一步步进行了优化,加大程序的可 ...

  6. jQuery淡入淡出轮播图实现

    大家好我是 只是个单纯的小白,这是人生第一次写博客,准备写的内容是Jquery淡入淡出轮播图实现,在此之前学习JS写的轮播图效果都感觉不怎么好,学习了jQuery里的淡入淡出效果后又写了一次轮播图效果 ...

  7. jQuery个性化图片轮播效果

    jQuery个性化图片轮播效果 购物产品展示:图片轮播器<效果如下所示> 思路说明: 每隔一段时间,实现图片的自动切换及选项卡选中效果,鼠标划入图片动画停止,划出或离开动画开始 两个区域: ...

  8. jQuery.YesShow - 图片轮播插件(带图片放大功能)

    jQuery.YesShow - 图片轮播插件(带图片放大功能) 使用简单,原文件只要这样就可以了:<div id="yes">         <ul> ...

  9. 自适应图片宽度的jQuery焦点幻灯轮播代码

    自适应图片宽度的jQuery焦点幻灯轮播代码 注意要1.7.2版本的jq才支持点击后显示点击的图片,不然就是一直顺序播放 演示   XML/HTML Code <div id="sli ...

随机推荐

  1. MySQL连接数据库报时区错误:java.sql.SQLException: The server time zone value

    连接MySQL数据库时报以下时区错误信息: java.sql.SQLException: The server time zone value '�й���׼ʱ��' is unrecognized ...

  2. Zepto.js-事件处理

    http://www.webdevs.cn/article/68.html     web开发网 事件 $.Event $.Event(type, [properties]) ⇒ event 创建并初 ...

  3. apache 添加 ssl_module

    下载httpd2.2.6,以前用http2.2.4会出问题(出现个什么lib的错误) ./configure --prefix=/usr/local/apache --enable-ssl --ena ...

  4. Java线程:线程安全类和Callable与Future(有返回值的线程)

    一.线程安全类 当一个类已经很好的同步以保护它的数据时,这个类就称为线程安全的.当一个集合是安全的,有两个线程在操作同一个集合对象,当第一个线程查询集合非空后,删除集合中所有元素的时候,第二个线程也来 ...

  5. HTML <div> 和<span>

    HTML <div> 和<span> HTML 可以通过 <div> 和 <span>将元素组合起来. HTML 区块元素 大多数 HTML 元素被定义 ...

  6. HTML 样式- CSS

    如何使用CSS CSS 是在 HTML 4 开始使用的,是为了更好的渲染HTML元素而引入的. CSS 可以通过以下方式添加到HTML中: 内联样式- 在HTML元素中使用"style&qu ...

  7. doubango介绍

    1.doubango官网:http://www.doubango.org/ 2.doubango是一个开源的VOIP基础平台, 并能用于嵌入式和桌面系统的开源框架,该框架使用ANSCI-C编写,具有很 ...

  8. 利用forwardInvocation实现消息重定向

    在obj-c中我们可以向一个实例发送消息,相当于c/c++ java中的方法调用,只不过在这儿是说发送消息,实例收到消息后会进行一些处理.比如我们想调用一个方法,便向这个实例发送一个消息,实例收到消息 ...

  9. Android开发系列之Context

    相信大家对于Context应该非常熟悉,但是Context到底是什么意思呢?到底指的是什么东西呢?我们可以理解为当前对象在程序中所处的一个环境,一个与系统交互的过程.Android系统的上下文对象,即 ...

  10. 大咖,我能转行做UX设计师吗?

    前几天,有个朋友找到我,叫我给分析下他适不适合转UX设计.他的专业是建筑设计,之所以要辞职,也就是公司破事多,老板又不看重他.看到UX设计这个行业的前景很不错,想要转行.他说的也没错, 现在的UX设计 ...