Bootsrap 的 Carousel
一、简介
Carousel 就是指轮播图,这里 有完整的代码例子。它可以很简单的就构造出来,结构如下:
div.carousel.slide[data-ride="carousel"]
div.carousel-inner[role="listbox"]
div.item.active
img
div.carousel-caption
div.item
img
div.carousel-caption
具体代码如下。
<div class="carousel slide" data-ride="carousel">
<div class="carousel-inner" role="listbox">
<div class="item active">
<img src="http://www.ruanyifeng.com/images_pub/pub_345.jpg" alt="" />
<div class="carousel-caption">
<p>凝望世间万物</p>
</div>
</div>
<div class="item">
<img src="http://www.ruanyifeng.com/images_pub/pub_128.jpg" alt="" />
<div class="carousel-caption">
<p>幸与不幸,都是你</p>
</div>
</div>
</div>
</div>
.carousel
将组件标记为轮播器,.slide
设置轮播器图片切换效果是从右向左滑动。- 页面加载完成后,
data-ride="carousel"
确保轮播器自动启动。 - 被标记为
.item.active
幻灯片最开始显示的幻灯片。
二、Carousel Indicators
Carousel indicators 是轮播器计数器。加上计数器后的轮播图代码结构如下:
div#generic_carousel.carousel.slide[data-ride="carousel"]
ol.carousel-indicators
li.active[data-target="#generic_carousel" data-slide-to="0"]
li[data-target="#generic_carousel" data-slide-to="1"]
div.carousel-inner[role="listbox"]
div.item.active
img
div.carousel-caption
div.item
img
div.carousel-caption
具体代码如下。
<div id="generic_carousel" class="carousel slide" data-ride="carousel">
<ol class="carousel-indicators">
<li data-target="#generic_carousel" data-slide-to="0" class="active"></li>
<li data-target="#generic_carousel" data-slide-to="1"></li>
</ol>
<div class="carousel-inner" role="listbox">
<div class="item">
<img src="http://www.ruanyifeng.com/images_pub/pub_345.jpg" alt=";(" />
<div class="carousel-caption">
<p>凝望世间万物</p>
</div>
</div>
<div class="item active">
<img src="http://www.ruanyifeng.com/images_pub/pub_128.jpg" alt=";(" />
<div class="carousel-caption">
<p>幸与不幸,都是你</p>
</div>
</div>
</div>
</div>
我们为 .carousel
添加了 id generic_carousel
,供 .carousel-indicators
使用。
对于 carousel-indicators > li
:
- 指定
data-target
属性值为#generic_carousel
,其中data-slide-to
为 indicator 对应的幻灯片位置(从 0 开始)。 - 指定为
.active
的 indicator 会高亮。
三、Carousel Controls
Carousel Controls 是轮播器控制器(上一张,下一张)。加上控制器后的轮播图代码结构如下:
div#generic_carousel.carousel.slide[data-ride="carousel"]
ol.carousel-indicators
li.active[data-target="#generic_carousel" data-slide-to="0"]
li[data-target="#generic_carousel" data-slide-to="1"]
div.carousel-inner[role="listbox"]
div.item.active
img
div.carousel-caption
div.item
img
div.carousel-caption
a.carousel-control.left[href="#generic_carousel" role="button" data-slide="prev"]
a.carousel-control.right[href="#generic_carousel" role="button" data-slide="next"]
具体代码如下。
<div class="col-xs-offset-3 col-xs-6">
<h1 class="text-center">Carousel with Controls</h1>
<div id="generic_carousel" class="carousel slide" data-ride="carousel">
<ol class="carousel-indicators">
<li data-target="#generic_carousel" data-slide-to="0" class="active"></li>
<li data-target="#generic_carousel" data-slide-to="1"></li>
</ol>
<div class="carousel-inner" role="listbox">
<div class="item">
<img src="http://www.ruanyifeng.com/images_pub/pub_345.jpg" alt="" />
<div class="carousel-caption">
<p>凝望世间万物</p>
</div>
</div>
<div class="item active">
<img src="http://www.ruanyifeng.com/images_pub/pub_128.jpg" alt="" />
<div class="carousel-caption">
<p>幸与不幸,都是你</p>
</div>
</div>
</div>
<a class="left carousel-control" href="#generic_carousel" role="button" data-slide="prev">
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
<span class="sr-only">前一张图片</span>
</a>
<a class="right carousel-control" href="#generic_carousel" role="button" data-slide="next">
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
<span class="sr-only">后一张图片</span>
</a>
</div>
</div>
添加了两个 <a>
标签,使切换幻灯片生效的是这两个属性:
href
data-slide
四、通过 JavaScript 调用
以上的代码都是通过标签 API 实现轮播图播放的。当然,也可以通过 JavaScript 调用实现。
使用 JavaScript 调用就不用再写 data-ride="carousel"
了。
$('.carousel').carousel({
interval: 8000
});
除此之外,使用使用 JavaScript 调用还有它的好处——自定义轮播图参数,这些参数包括:
interval
:轮播间隔时间。默认5000
,5 秒。pause
:默认为"hover"
。当设置为"hover"
时,每当鼠标在幻灯片上发生mouseenter
事件,轮播停止;mouseleave
后轮播开始。wrap
:默认为true
。是否循环播放轮播图。keyboard
:默认为true
。是否支持键盘事件。
五、Carousel 事件
轮播图轮播过程中,可以捕获到的事件有两个:
slide.bs.carousel
:幻灯片切换开始时触发。slid.bs.carousel
:幻灯片切换结束时触发。
$('#generic_carousel').on('slide.bs.carousel', function () {
// do something…
})
六、参考链接
http://getbootstrap.com/javascript/#carousel
(完)
Bootsrap 的 Carousel的更多相关文章
- 利用bootstrap的carousel.js实现轮播图动画
前期准备: 1.jquery.js. 2.bootstrap的carousel.js. 3.bootstrap.css. 如果大家不知道在哪下载,可以联系小颖,小颖把这些js和css可以发送给你. 一 ...
- Carousel 旋转画廊特效的疑难杂症
疑难杂症 该画廊特效的特点就是前后元素有层级关系. 我想很多人应该看过或者用过这个插件carousel.js,网上也有相关的教程.不知道这个插件的原型是哪个,有知道的朋友可以告诉我. 该插件相对完美, ...
- 学会用bootstrap的modal和carousel
bootstrap框架提供了很多好用的javascript组件,可以很方便的实现常用的js效果,比如点击弹出一个div(modal).下拉菜单.旋转木马(carousel或slider),非常适合前端 ...
- Bootstrap 之 Carousel
Bootstrap 轮播(Carousel)插件是一种灵活的响应式的向站点添加滑块的方式.除此之外,内容也是足够灵活的,可以是图像.内嵌框架.视频或者其他您想要放置的任何类型的内容. 如果您想要单独引 ...
- DevExpress Carousel 设置水平滑动列表
DevExpress中Carousel控件的应用 Carousel,直译为旋转木马,即旋转视图,可以做为数据的展示或者菜单项. 要实现触摸左右滑动的效果,其实是比较容易的,直接在CarouselPan ...
- Bootsrap基本应用
Bootsrap 用法: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...
- jquery 的3D Carousel插件参数说明
这个插件大家都很熟悉了,但是在网上找了很久找不到相关的资料,只有自己琢磨研究了一下.有些参数一眼都可以看出意思,在此我只说一下每个图片要想带一些扩展信息怎么处理. 1:首先需要创建一个ul对象,然后里 ...
- Bootstrap之Carousel不能自动播放的解决办法(转)
Bootstrap是一个非常好的css/javaScript框架,尤其对于移动端的自适应和适配能力都比较强. 用Bootstrap自带的Carousel写了一个图片轮播的广告部分,用js调用后却出现了 ...
- AngularJs的UI组件ui-Bootstrap分享(十四)——Carousel
Carousel指令是用于图片轮播的控件,引入ngTouch模块后可以在移动端使用滑动的方式使用轮播控件. <!DOCTYPE html> <html ng-app="ui ...
随机推荐
- 【Spring-web】AsyncRestTemplate源码学习
2017-01-23 by 安静的下雪天 http://www.cnblogs.com/quiet-snowy-day/p/6343347.html 本篇概要 类说明 类图 简单例子 精辟的内部类 类 ...
- 使用fullPage.js遇到的问题以及翻译
使用fullPage.js做一简单页面,遇一古怪问题:.section中的h1标签始终被一插件生成的标签包裹,导致样式调整好不困难!花费数小时排查为何会生成这样一个标签,最终在fullPage.js的 ...
- Python系列之Collections内置模块(1)
collections 是 python 的内置模块,源码位于 Lib/collections/__init__.py ,该模块提供了通用的数据容器. deque 容器对象 通过 from colle ...
- SQL Server 安装报错找不到vc_red.msi
问题描述: 今天给 WIN 7 SP1 操作系统安装 SQL Server 2014 ,报错找不到vc_red.msi (图片来源网络,请忽略2012字样..) 问题解决: 1.由于安装程序提 ...
- 使用python制作ArcGIS插件(5)其他技巧
使用python制作ArcGIS插件(5)其他技巧 by 李远祥 使用python做插件开发,除了了解ArcToolBox工具之外,还需要在了解ArcPy的相关函数和接口.只有掌握了这些,才可以顺利的 ...
- substring和substr、$.extend()、$.fn.extend()、(function($){….})(jQuery)的简易讲解
1. JS中substring与substr的区别 Substring: 该方法可以有一个参数也可以有两个参数. l 一个参数: 示例: var str="Olive": ...
- C语言 memcpy二维数组的复制
今天在实现二维数组的复制功能时,竟然出现了好多问题,还是太不小心了. 我们知道,平时进行矩阵复制,无非是二重循环进行赋值操作,所以今天想改用利用memcpy进行复制操作,当然一维数组的复制在上一篇文章 ...
- AngularJS2环境配置
所使用到的文件目录结构如下所示: 1. 创建配置文件: 1.1. 创建目录: mkdir angular-quickstart cd angular-quickstart 1.2. 载入 ...
- java继承(一)
虽然说java中的面向对象的概念不多,但是具体的细节还是值得大家学习研究,java中的继承实际上就是子类拥有父类所有的内容(除私有信息外),并对其进行扩展.下面是我的笔记,主要包含以下一些内容点: 构 ...
- ZwQueryVirtualMemory枚举进程模块
ZwQueryVirtualMemory算是枚举进程方法中的黑科技吧,主要是该方法可以检测出隐藏的模块(类似IceSword). 代码VS2015测试通过 再次奉上源码链接:https://githu ...