5-13 图片轮播--JavaScript触发方法
本节编程练习不计算学习进度,请电脑登录imooc.com操作

图片轮播--JavaScript触发方法

默认情况之下,如果 carousel 容器上定义了 data-ride="carousel" 属性,页面加载之后就会自动加载轮播图片切换效果。如果没有定义 data-ride 属性,可以通过 JavaScript 方法来触发轮播图片切换。具体使用方法如下:

$(".carousel").carousel();

也可以通过容器的 ID 来指定:

$("#slidershow").carousel();

在 carousel() 方法中可以设置具体的参数,如:

属性名称

类型

默认值

描述

interval

number

5000

幻灯片轮换的等待时间(毫秒)。如果为false,轮播将不会自动开始循环

pause

string

hover

默认鼠标悬停留在幻灯片区域即停止播放,离开即开始播放

wrap

布尔值

true

轮播是否持续循环

使用时,在初始化插件的时候可以传关相关的参数,如:

$("#slidershow").carousel({
       interval: 3000
});

实际上,当我们给carousel()方法配置参数之后,轮播效果就能自动切换。但 Bootstrap 框架中的 carousel 插件还给使用者提供了几种特殊的调用方法,简单说明如下:

例如,前面的调用方法,向前和向后两个按钮还无法正常工作,其实可以通过 .carousel("prev") 和 .carousel("next") 方法让他们能正常工作,代码如下:

$(function(){
    $("#slidershow").carousel({
        interval:2000
    });
    $("#slidershow a.left").click(function(){
        $(".carousel").carousel("prev");
    });
    $("#slidershow a.right").click(function(){
        $(".carousel").carousel("next");
    });
});

 

任务

我来试试:使用JS实现“图片自动轮播”和“向前、向后按钮”的功能实现

可以看到我们已经把 data-ride="carousel" 和  data-slide="prev"、 data-slide="next" 三个语句去掉了,我们来使用JS代码实现“图片自动轮播”和“向前、向后按钮”的功能实现。
 

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
  5. <style>
  6. body{padding:10px;margin:10px;}
  7. </style>
  8. </head>
  9. <body>
  10.  
  11. <div id="slidershow" class="carousel slide">
  12. <!-- 设置图片轮播的顺序 -->
  13. <ol class="carousel-indicators">
  14. <li class="active" data-target="#slidershow" data-slide-to="0">1</li>
  15. <li data-target="#slidershow" data-slide-to="1">2</li>
  16. <li data-target="#slidershow" data-slide-to="2">3</li>
  17. </ol>
  18. <!-- 设置轮播图片 -->
  19. <div class="carousel-inner">
  20. <div class="item active">
  21. <a href="##"><img src="http://images3.c-ctrip.com/rk/201407/ll580x145.jpg" alt=""></a>
  22. <div class="carousel-caption">
  23. <h3>图片标题1</h3>
  24. <p>描述内容1...</p>
  25. </div>
  26. </div>
  27. <div class="item">
  28. <a href="##"><img src="http://images3.c-ctrip.com/dj/201408/zj/zj_580145.jpg" alt=""></a>
  29. <div class="carousel-caption">
  30. <h3>图片标题2</h3>
  31. <p>描述内容2...</p>
  32. </div>
  33. </div>
  34. <div class="item">
  35. <a href="##"><img src="http://images3.c-ctrip.com/dj/201408/zqgq_580145.jpg" alt=""></a>
  36. <div class="carousel-caption">
  37. <h3>图片标题3</h3>
  38. <p>描述内容3...</p>
  39. </div>
  40. </div>
  41. </div>
  42. <a class="left carousel-control" href="#slidershow" role="button">
  43. <span class="glyphicon glyphicon-chevron-left"></span>
  44. </a>
  45. <a class="right carousel-control" href="#slidershow" role="button">
  46. <span class="glyphicon glyphicon-chevron-right"></span>
  47. </a>
  48. </div>
  49.  
  50. <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
  51. <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
  52. <script>
  53. ???
  54. </script>
  55. </body>
  56. </html>
下一节