Bootstrap3.0学习教程之JS折叠插件


Posted in Javascript onMay 27, 2016

过渡效果

关于过渡效果

对于简单的过渡效果,只需将transition.js和其它JS文件一起引入即可。如果你使用的是编译(或压缩)好的bootstrap.js文件,就无需再单独将其引入了。

What's inside

Transition.js是针对 is a basic helper for transitionEnd事件的一个基本助手工具,也是对CSS过渡效果的模拟。它被其它插件用来检测当前浏览器对CSS过渡效果是否支持。

折叠

对为支持折叠功能的组件,例如accordions和导航,赋予基本样式和灵活的支持。

插件依赖

折叠插件依赖过渡效果插件。

案例

使用折叠插件,通过扩展panel组件从而构建了一个简单的accordion组件。

先来看一下效果。

Bootstrap3.0学习教程之JS折叠插件

接下来看一下代码的实现。

<div class="container" style="margin-top:140px;">
<div class="panel-group" id="accordion">
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">
<a data-toggle="collapse" data-toggle="collapse" data-parent="#accordion" href="#collapseOne"> Collapsible Group Item </a>
</h4>
</div>
<div id="collapseOne" class="panel-collapse collapse in">
<div class="panel-body"> Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.</div>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">
<a data-toggle="collapse" data-toggle="collapse" data-parent="#accordion" href="#collapseTwo"> Collapsible Group Item #2 </a>
</h4>
</div>
<div id="collapseTwo" class="panel-collapse collapse">
<div class="panel-body"> Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS. </div>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">
<a data-toggle="collapse" data-toggle="collapse" data-parent="#accordion" href="#collapseThree"> Collapsible Group Item #3 </a>
</h4>
</div>
<div id="collapseThree" class="panel-collapse collapse">
<div class="panel-body"> Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS. </div>
</div>
</div>
</div>
</div>

第一步:首先最外面那层panel-group这层下面包括几个小组。

第二步:看一下几个简单的组

<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">
<a data-toggle="collapse" data-toggle="collapse" data-parent="#accordion" href="#collapseOne"> Collapsible Group Item #1 </a>
</h4>
</div>
<div id="collapseOne" class="panel-collapse collapse in">
<div class="panel-body">
</div>
</div>
</div>

通过代码也比较清楚的可以看出一个panel的结构。

panel-header和pandl-body,然后panel-header里面可以包含标题,链接。通过链接和panel-body相连。

第三步:你可以发现在panel-group中有一个id="accordion",然后下面每个标题下链接中有个data-parent="#accordion"。

如果去掉的话,那么效果就是点击其他链接后,原来的panel并不会再缩起来了。

你可以通过另一个方式来展示折叠的效果。

<div class="container" style="margin-top:140px;">
<button type="button" class="btn btn-danger" data-toggle="collapse" data-target="#demo"> simple collapsible </button>
<div id="demo" class="collapse in">Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.</div>

Bootstrap3.0学习教程之JS折叠插件

用法

折叠插件通过几个简单的类来控制样式

.collapse 隐藏内容

.collapse in 显示内容

.collapsing。 It is added when the transition starts, and removed when it finishes意思大概可能就是折叠被添加后过渡效果就有了,然后如果被移除了它就结束了。

通过data属性

仅仅通过向页面元素添加data-toggle="collapse" 和data-target就可以为其赋予控制可折叠页面元素的能力。data-target属性接受一个CSS选择器作为其控制对象。请确保为可折叠页面元素添加collapse class。如果你希望可折叠页面元素的默认状态是展开的,请添加in class。

为了给一组可折叠页面元素添加控制器,添加data-parent="#selector"即可。请参考上面的例子即可。

通过JavaScript

<button type="button" class="btn btn-danger" onClick="Open()">打开</button>
<button type="button" class="btn btn-danger" onClick="Hide()">折叠</button>
<div id="demo" class="collapse in">Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.</div>
<div class="panel-group" id="accordion" style="margin-top:240px;">
<script type="text/javascript">
$(function(){
$("#demo").collapse({ toggle: false })
})
function Open(){
$("#demo").collapse("show");
}
function Hide(){
$("#demo").collapse("hide");
}
</script>

来看一下上面的效果

Bootstrap3.0学习教程之JS折叠插件

方法

赋予页面元素可折叠功能。接受一个可选的object作为参数。

$("#demo").collapse({toggle: false})

这样元素在初始化的时候会是展开的。

1.collapse('toggle')展示或隐藏一个可折叠的页面元素。

2.collapse('show')展示一个可折叠页面元素。

3.collapse('hide')隐藏一个可折叠页面元素。

事件

Bootstrap中的折叠插件对外暴露了一组可以监听的事件。

Bootstrap3.0学习教程之JS折叠插件

$('#demo').on('hidden.bs.collapse', function () {
alert(1);
})

这样就为元素绑定了隐藏时的事件。

Javascript 相关文章推荐
地址栏上的一段语句,改变页面的风格。(教程)
Apr 02 Javascript
基于jQuery的输入框在光标位置插入内容, 并选中
Oct 29 Javascript
js遍历子节点子元素附属性及方法
Aug 19 Javascript
JavaScript ES6的新特性使用新方法定义Class
Jun 28 Javascript
jQuery css() 方法动态修改CSS属性
Sep 25 Javascript
angular 服务的单例模式(依赖注入模式下)详解
Oct 22 Javascript
Vue2.0实现简单分页及跳转效果
Jul 29 Javascript
Vue 使用beforeEach实现登录状态检查功能
Oct 31 Javascript
微信小程序登陆注册功能的实现代码
Dec 10 Javascript
基于vue和websocket的多人在线聊天室
Feb 01 Javascript
JS面向对象编程基础篇(三) 继承操作实例详解
Mar 03 Javascript
vue组件vue-esign实现电子签名
Apr 21 Vue.js
全面解析多种Bootstrap图片轮播效果
May 27 #Javascript
bootstrap-wysiwyg结合ajax实现图片上传实时刷新功能
May 27 #Javascript
极力推荐一款小巧玲珑的可视化编辑器bootstrap-wysiwyg
May 27 #Javascript
所见即所得的富文本编辑器bootstrap-wysiwyg使用方法详解
May 27 #Javascript
非常酷炫的Bootstrap图片轮播动画
May 27 #Javascript
Bootstrap安装环境配置教程分享
May 27 #Javascript
Bootstrap布局方式详解
May 27 #Javascript
You might like
谈PHP生成静态页面分析 模板+缓存+写文件
2009/08/17 PHP
php解析xml方法实例详解
2015/05/12 PHP
php 读写json文件及修改json的方法
2018/03/07 PHP
baidu博客的编辑友情链接的新的层窗口!经典~支持【FF】
2007/02/09 Javascript
setAttribute 与 class冲突解决
2008/02/17 Javascript
jQuery弹出(alert)select选择的值
2013/04/21 Javascript
JavaScript创建类/对象的几种方式概述及实例
2013/05/06 Javascript
页面载入结束自动调用js函数示例
2013/09/23 Javascript
当json键为数字时的取值方法解析
2013/11/15 Javascript
JQuery获取与设置HTML元素的内容或文本的实现代码
2014/06/20 Javascript
JavaScript中的全局对象介绍
2015/01/01 Javascript
js实现滚动条滚动到某个位置便自动定位某个tr
2021/01/20 Javascript
jQuery动态加载css文件实现方法
2016/06/15 Javascript
Javascript中关于Array.filter()的妙用详解
2016/12/04 Javascript
Angularjs中使用layDate日期控件示例
2017/01/11 Javascript
ajax 提交数据到后台jsp页面及页面跳转问题
2017/01/19 Javascript
vue2.0 父组件给子组件传递数据的方法
2018/01/15 Javascript
vue移动端实现下拉刷新
2018/04/22 Javascript
js 将线性数据转为树形的示例代码
2019/05/28 Javascript
python根据经纬度计算距离示例
2014/02/16 Python
使用Python实现下载网易云音乐的高清MV
2015/03/16 Python
python抓取京东小米8手机配置信息
2018/11/13 Python
python如何获取当前文件夹下所有文件名详解
2019/01/25 Python
Python3 itchat实现微信定时发送群消息的实例代码
2019/07/12 Python
python函数map()和partial()的知识点总结
2020/05/26 Python
关于HTML5的安全问题开发人员需要牢记的
2012/06/21 HTML / CSS
HTML5 embed 标签使用方法介绍
2013/08/13 HTML / CSS
使用phonegap播放音频的实现方法
2017/03/31 HTML / CSS
C/C++ 笔试、面试题目大汇总
2015/11/21 面试题
材料员岗位职责
2014/03/13 职场文书
彩色的翅膀教学反思
2014/04/25 职场文书
高一军训决心书
2015/02/05 职场文书
2016公司年会主持词
2015/07/01 职场文书
使用PDF.js渲染canvas实现预览pdf的效果示例
2021/04/17 Javascript
「我的青春恋爱物语果然有问题。-妄言录-」第20卷封面公开
2022/03/21 日漫
springboot+rabbitmq实现智能家居实例详解
2022/07/23 Java/Android