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 相关文章推荐
js ondocumentready onmouseover onclick onmouseout 样式
Jul 22 Javascript
jQuery动画效果animate和scrollTop结合使用实例
Apr 02 Javascript
JS实现点击上移下移LI行数据的方法
Aug 05 Javascript
详解angular 中的自定义指令之详解API
Jun 20 Javascript
获取本机IP地址的实例(JavaScript / Node.js)
Nov 24 Javascript
JS实现简单获取最近7天和最近3天日期的方法
Apr 18 Javascript
JS实现的3des+base64加密解密算法完整示例
May 18 Javascript
解决vue接口数据赋值给data没有反应的问题
Aug 27 Javascript
vue.js层叠轮播效果的实例代码
Nov 08 Javascript
python虚拟环境 virtualenv的简单使用
Jan 21 Javascript
JS数组降维的实现Array.prototype.concat.apply([], arr)
Apr 28 Javascript
微信小程序基于高德地图API实现天气组件(动态效果)
Oct 22 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
phpfans留言版用到的install.php
2007/01/04 PHP
MayFish PHP的MVC架构的开发框架
2009/08/13 PHP
php抓取https的内容的代码
2010/04/06 PHP
PHP文章按日期(月日)SQL归档语句
2012/11/29 PHP
php实现的click captcha点击验证码类实例
2014/09/23 PHP
PHP计算日期相差天数实例分析
2016/02/23 PHP
js页面跳转常用的几种方式
2010/11/25 Javascript
jQuery Tips 为AJAX回调函数传递额外参数的方法
2010/12/28 Javascript
给页面渲染时间加速 干掉Dom Level 0 Event
2012/12/19 Javascript
js控制多图左右滚动切换效果代码分享
2015/08/26 Javascript
js实现瀑布流的三种方式比较
2020/06/28 Javascript
js微信分享API
2020/10/11 Javascript
BootStrap Validator 版本差异问题导致的submitHandler失效问题的解决方法
2016/12/01 Javascript
layui分页效果实现代码
2017/05/19 Javascript
微信小程序实现顶部选项卡(swiper)
2020/06/19 Javascript
vue axios 简单封装以及思考
2018/10/09 Javascript
原生js实现Flappy Bird小游戏
2018/12/24 Javascript
Vue 动态添加路由及生成菜单的方法示例
2019/06/20 Javascript
typescript nodejs 依赖注入实现方法代码详解
2019/07/21 NodeJs
JavaScript实现京东放大镜效果
2019/12/03 Javascript
JS端基于download.js实现图片、视频时直接下载而不是打开预览
2020/05/09 Javascript
vue项目查看vue版本及cli版本的实现方式
2020/10/24 Javascript
[00:36]TI7不朽珍藏III——斯温不朽展示
2017/07/15 DOTA
Python实现查找系统盘中需要找的字符
2015/07/14 Python
Django1.9 加载通过ImageField上传的图片方法
2018/05/25 Python
Visual Studio code 配置Python开发环境
2020/09/11 Python
用python制作个音乐下载器
2021/01/30 Python
大门门卫岗位职责
2013/11/30 职场文书
木工主管岗位职责
2013/12/08 职场文书
教育局长自荐信范文
2013/12/22 职场文书
安全生产投入制度
2014/01/29 职场文书
委托书如何写
2014/08/30 职场文书
大三学生学年自我鉴定
2014/09/12 职场文书
重阳节简报
2015/07/20 职场文书
德能勤绩工作总结
2015/08/11 职场文书
win11怎么用快捷键锁屏? windows11锁屏的几种方法
2021/11/21 数码科技