Bootstrap3制作图片轮播效果


Posted in Javascript onMay 12, 2016

先来看看Bootstrap图片轮播效果:

Bootstrap3制作图片轮播效果

上面就是为大家分享的效果,不过这是网易云音乐的首页。

这样的效果记得最先在ios7的官方控件库中出现之后安卓也在某个版本加入了这个view,设计是通用的啊..bootstrap3也支持在web中使用这样的效果。

接下来进行简单分析:

一 . 结构分析

一个轮播图片主要包括三个部分:

☑ 轮播的图片

☑ 轮播图片的计数器

☑ 轮播图片的控制器

第一步:设计轮播图片的容器。在 Bootstrap 框架中采用 carousel 样式,并且给这个容器定义一个 ID 值,方便后面采用 data 属性来声明触发。

<div id="slidershow" class="carousel"></div>

第二步:设计轮播图片计数器。在容器 div.carousel 的内部添加轮播图片计算器,采用 carousel-indicators 样式,其主要功能是显示当前图片的播放顺序(有几张图片就放置几个li),一般采用有顺列表来制作:
<div id="slidershow" class="carousel">
<!-- 设置图片轮播的顺序 -->
 <ol class="carousel-indicators">
 <li class="active">1</li>
 <li>2</li>
 <li>3</li>
 <li>4</li>
 <li>5</li></ol>
</div>

第三步:设计轮播图片播放区。轮播图整个效果中,播放区是最关键的一个区域,这个区域主要用来放置需要轮播的图片。这个区域使用 carousel-inner 样式来控制,而且其同样放置在 carousel 容器内,并且通过 item 容器来放置每张轮播的图片:

<div id="slidershow" class="carousel">
 <!-- 设置图片轮播的顺序 -->
 <ol class="carousel-indicators">
 <li class="active">1</li>
 …
 </ol>
 <!-- 设置轮播图片 -->
 <div class="carousel-inner">
 <div class="item active">
 <a href="##"><img src="http://images3.c-ctrip.com/rk/201407/ll580x145.jpg" alt=""></a>
 </div>
 <div class="item">
 <a href="##"><img src="http://images3.c-ctrip.com/dj/201408/zj/zj_580145.jpg" alt=""></a>
 </div>
 …
 <div class="item">
 <a href="##"><img src="http://images3.c-ctrip.com/dj/201408/zqgq_580145.jpg" alt=""></a>
 </div>
 </div>
</div> 

第四步:设置轮播图片描述.很多轮播图片效果,在每个图片上还对应有自己的标题和描述内容。其实 Bootstrap 框架中的 Carousel 也提供类似的效果。只需要在 item 中图片底部添加对应的代码.

<div id="slidershow" class="carousel">
 <!-- 设置图片轮播的顺序 -->
 <ol class="carousel-indicators">
 <li class="active">1</li>
 …
 </ol>
 <!-- 设置轮播图片 -->
 <div class="carousel-inner">
 <div class="item active">
 <a href="##"><img src="http://images3.c-ctrip.com/rk/201407/ll580x145.jpg" alt=""></a>
 <!-- 图片对应标题和描述内容 -->
 <div class="carousel-caption">
 <h3>图片标题</h3>
 <p>描述内容...</p>
 </div>
 </div>
 …
 </div>
</div>

第五步:设计轮播图片控制器。很多时候轮播图片还具有一个向前播放和向后播放的控制器。在 Carousel 中通过 carousel-control样式配合 left 和 right 来实现。其中left表示向前播放,right表示向后播放。其同样放在carousel容器内:

<div id="slidershow" class="carousel">
 <!-- 设置图片轮播的顺序 -->
 <ol class="carousel-indicators">
 …
 </ol>
 <!-- 设置轮播图片 -->
 <div class="carousel-inner">
 …
 </div>
 <!-- 设置轮播图片控制器 -->
 <a class="left carousel-control" href="" >
 <span class="glyphicon glyphicon-chevron-left"></span>
 </a>
 <a class="right carousel-control" href="">
 <span class="glyphicon glyphicon-chevron-right"></span>
 </a> 
</div>

二、实现过程

<div id="carousel-example-generic" class="carousel slide" data-ride="carousel">
 <!-- Indicators -->
 <ol class="carousel-indicators">
 <li data-target="#carousel-example-generic" data-slide-to="0" class="active"></li>
 <li data-target="#carousel-example-generic" data-slide-to="1"></li>
 <li data-target="#carousel-example-generic" data-slide-to="2"></li>
 </ol>

 <!-- Wrapper for slides -->
 <div class="carousel-inner" role="listbox">
 <div class="item active">
 <img src="..." alt="...">
 <div class="carousel-caption">
 ...
 </div>
 </div>
 <div class="item">
 <img src="..." alt="...">
 <div class="carousel-caption">
 ...
 </div>
 </div>
 ...
 </div>

 <!-- Controls -->
 <a class="left carousel-control" href="#carousel-example-generic" role="button" data-slide="prev">
 <span class="glyphicon glyphicon-chevron-left"></span>
 <span class="sr-only">Previous</span>
 </a>
 <a class="right carousel-control" href="#carousel-example-generic" role="button" data-slide="next">
 <span class="glyphicon glyphicon-chevron-right"></span>
 <span class="sr-only">Next</span>
 </a>
</div>

分为三个部分

1、指示器
一个部分是下面的小点..就是指示器

Bootstrap3制作图片轮播效果

ol class="carousel-indicators"类用于创建这个指示器

每个里data-slide-to="0" 属性用于指引位置 class="active" 定义默认激活状态
item

<div class="item">
 <img src="..." alt="...">
 <div class="carousel-caption">
 <h3>...</h3>
 <p>...</p>
 </div>
</div>

没啥悬念 就是每一个项目,填充图片 题目内容 就好

2、左右控制器
代码如下

<a class="left carousel-control" href="#myCarousel" role="button" data-slide="prev">
 <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
 <span class="sr-only">Previous</span>
 </a>
 <a class="right carousel-control" href="#myCarousel" role="button" data-slide="next">
 <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
 <span class="sr-only">Next</span>
 </a>

在javascript中操作

初始化

$('.carousel').carousel({
 interval: 2000
})

进行循环

.carousel('cycle')

暂停

.carousel('pause')

定位到具体某一个item 从0开始

.carousel(number)

前一个

.carousel('prev')

下一个

.carousel('next')

关于Bootstrap的更多内容大家还可以参考专题进行学习: 《Bootstrap学习教程》

以上就是针对javascript图片轮播进行的详细介绍,希望本文对大家学习javascript程序设计有所帮助。

Javascript 相关文章推荐
动态控制Table的js代码
Mar 07 Javascript
IE与Firefox下javascript getyear年份的兼容性写法
Dec 20 Javascript
JS 添加网页桌面快捷方式的代码详细整理
Dec 27 Javascript
javascript判断非数字的简单例子
Jul 18 Javascript
JavaScript常用验证函数实例汇总
Nov 25 Javascript
js兼容火狐显示上传图片预览效果的方法
May 21 Javascript
清除js缓存的多种方法总结
Dec 09 Javascript
微信小程序 扎金花简单实例
Feb 21 Javascript
使用vuex缓存数据并优化自己的vuex-cache
May 30 Javascript
深入浅析javascript函数中with
Oct 28 Javascript
Vue自定义指令上报Google Analytics事件统计的方法
Feb 25 Javascript
解决vue跨域axios异步通信问题
Apr 17 Javascript
JS创建事件的三种方法(实例代码)
May 12 #Javascript
jQuery判断checkbox选中状态
May 12 #Javascript
Bootstrap3制作自己的导航栏
May 12 #Javascript
基于Bootstrap重置输入框内容按钮插件
May 12 #Javascript
jquery ajax局部加载方法详解(实现代码)
May 12 #Javascript
分享12个非常实用的JavaScript小技巧
May 11 #Javascript
分享10个优化代码的CSS和JavaScript工具
May 11 #Javascript
You might like
如何将数据从文本导入到mysql
2006/10/09 PHP
PHP、Python和Javascript的装饰器模式对比
2015/02/03 PHP
php+html5+ajax实现上传图片的方法
2016/05/14 PHP
php图像处理函数imagecopyresampled用法详解
2016/12/02 PHP
PHP 计算两个特别大的整数实例代码
2018/05/07 PHP
详解PHP神奇又有用的Trait
2019/03/25 PHP
php7新特性的理解和比较总结
2019/04/14 PHP
动态加载js和css(外部文件)
2013/04/17 Javascript
jquery 无限级下拉菜单的简单实现代码
2014/02/21 Javascript
防止按钮在短时间内被多次点击的方法
2014/03/10 Javascript
jQuery制作拼图小游戏
2015/01/12 Javascript
JavaScript设计模式学习之“类式继承”
2015/03/12 Javascript
限制复选框最多选择项的实现代码
2016/05/30 Javascript
JavaScript获取当前url根目录(路径)
2016/06/17 Javascript
Bootstrap中定制LESS-颜色及导航条(推荐)
2016/11/21 Javascript
微信小程序实战之上拉(分页加载)效果(2)
2017/04/17 Javascript
详解webpack+gulp实现自动构建部署
2017/06/29 Javascript
Swiper自定义分页器使用详解
2017/12/28 Javascript
Python实现的多线程端口扫描工具分享
2015/01/21 Python
Django学习笔记之Class-Based-View
2017/02/15 Python
详解python多线程之间的同步(一)
2019/04/03 Python
Python面向对象程序设计类变量与成员变量、类方法与成员方法用法分析
2019/04/12 Python
详解Python3之数据指纹MD5校验与对比
2019/06/11 Python
python 通过可变参数计算n个数的乘积方法
2019/06/13 Python
浅析PyTorch中nn.Module的使用
2019/08/18 Python
HTML5中的Web Notification桌面右下角通知功能的实现
2018/04/19 HTML / CSS
HTML5离线应用与客户端存储的实现
2018/05/03 HTML / CSS
新电JAVA笔试题目
2014/08/31 面试题
人事档案接收函
2014/01/12 职场文书
2014年五四青年节活动策划书
2014/04/22 职场文书
长城英文导游词
2015/01/30 职场文书
谢师宴家长答谢词
2015/09/30 职场文书
JavaScript使用canvas绘制坐标和线
2021/04/28 Javascript
使用golang编写一个并发工作队列
2021/05/08 Golang
Java 在生活中的 10 大应用
2021/11/02 Java/Android
如何用vue实现网页截图你知道吗
2021/11/17 Vue.js