Bootstrap每天必学之折叠


Posted in Javascript onApril 12, 2016

本文主要来学习一下JavaScript插件--折叠。
1、过渡效果
关于过渡效果
对于简单的过渡效果,只需将transition.js和其它JS文件一起引入即可。如果你使用的是编译(或压缩)好的bootstrap.js文件,就无需再单独将其引入了。
What's inside
Transition.js是针对 is a basic helper for transitionEnd事件的一个基本助手工具,也是对CSS过渡效果的模拟。它被其它插件用来检测当前浏览器对CSS过渡效果是否支持。
2、折叠
对为支持折叠功能的组件,例如accordions和导航,赋予基本样式和灵活的支持。

插件依赖

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

案例
使用折叠插件,通过扩展panel组件从而构建了一个简单的accordion组件。
先来看一下效果。

Bootstrap每天必学之折叠

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

<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>

Bootstrap每天必学之折叠

用法
折叠插件通过几个简单的类来控制样式
.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>

来看一下上面的效果

Bootstrap每天必学之折叠

方法
赋予页面元素可折叠功能。接受一个可选的object作为参数。
$("#demo").collapse({toggle: false})
这样元素在初始化的时候会是展开的。
1.collapse('toggle')展示或隐藏一个可折叠的页面元素。
2.collapse('show')展示一个可折叠页面元素。
3.collapse('hide')隐藏一个可折叠页面元素。
事件
Bootstrap中的折叠插件对外暴露了一组可以监听的事件。

Bootstrap每天必学之折叠

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

如果大家还想深入学习,可以点击这里进行学习,再为大家附两个精彩的专题:Bootstrap学习教程 Bootstrap实战教程

以上就是本文的全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
在JavaScript中访问字符串的子串
Jul 07 Javascript
node.js路径处理方法以及绝对路径详解
Mar 04 Javascript
vue多级多选菜单组件开发
Sep 08 Javascript
jQuery Validate插件自定义验证规则的方法
Dec 27 Javascript
JavaScript Date 知识浅析
Jan 29 Javascript
几行js代码实现自适应
Feb 24 Javascript
jQuery插件MovingBoxes实现左右滑动中间放大图片效果
Feb 28 Javascript
ES6中字符串string常用的新增方法小结
Nov 07 Javascript
JS实现字符串去重及数组去重的方法示例
Apr 21 Javascript
简单实现vue中的依赖收集与响应的方法
Feb 18 Javascript
three.js 将图片马赛克化的示例代码
Jul 31 Javascript
让你30分钟快速掌握vue3教程
Oct 26 Javascript
JavaScript几种数组去掉重复值的方法推荐
Apr 12 #Javascript
学习使用bootstrap基本控件(table、form、button)
Apr 12 #Javascript
如何高效率去掉js数组中的重复项
Apr 12 #Javascript
学习使用bootstrap3栅格系统
Apr 12 #Javascript
分享两段简单的JS代码防止SQL注入
Apr 12 #Javascript
DIV随滚动条滚动而滚动的实现代码【推荐】
Apr 12 #Javascript
原生js实现百叶窗效果及原理介绍
Apr 12 #Javascript
You might like
10个可以简化php开发过程的MySQL工具
2010/04/11 PHP
浅析ThinkPHP缓存之快速缓存(F方法)和动态缓存(S方法)(日常整理)
2015/10/26 PHP
PHP查询大量数据内存耗尽问题的解决方法
2016/10/28 PHP
javascript高亮效果的二种实现方法
2008/09/14 Javascript
JS小功能(onmouseover实现选择月份)实例代码
2013/11/28 Javascript
将HTML的左右尖括号等转义成实体形式的两种实现方式
2014/05/04 Javascript
js改变embed标签src值的方法
2015/04/10 Javascript
jQuery实现判断滚动条到底部
2015/06/23 Javascript
jQuery实现进度条效果代码
2015/12/17 Javascript
JavaScript中数组添加值和访问值常见问题
2016/02/06 Javascript
jQuery 中的 DOM 操作
2016/04/26 Javascript
JavaScript编程中实现对象封装特性的实例讲解
2016/06/24 Javascript
Node.js读写文件之批量替换图片的实现方法
2016/09/07 Javascript
JavaScript获取URL中参数querystring的方法详解
2016/10/11 Javascript
jQuery表单元素选择器代码实例
2017/02/06 Javascript
Angular2学习教程之组件中的DOM操作详解
2017/05/28 Javascript
原生JS 购物车及购物页面的cookie使用方法
2017/08/21 Javascript
webpack中如何加载静态文件的方法步骤
2019/05/18 Javascript
JS实现求字符串中出现最多次数的字符和次数示例
2019/07/05 Javascript
小程序中this.setData的使用和注意事项
2019/08/28 Javascript
jquery实现点击左右按钮切换图片
2021/01/27 jQuery
python中使用sys模板和logging模块获取行号和函数名的方法
2014/04/15 Python
Python3基础之基本运算符概述
2014/08/13 Python
使用Python导出Excel图表以及导出为图片的方法
2015/11/07 Python
python3+PyQt5使用数据库窗口视图
2018/04/24 Python
python中查看.db文件中表格的名字及表格中的字段操作
2020/07/07 Python
北京天润融通.net面试题笔试题
2012/02/20 面试题
在校生党员自我评价
2013/09/25 职场文书
2015年党风廉政承诺书
2015/01/22 职场文书
公司保洁员岗位职责
2015/02/13 职场文书
前台接待岗位职责范本
2015/04/03 职场文书
拔河比赛队名及霸气口号
2015/12/24 职场文书
HTML5基础学习之文本标签控制
2022/03/25 HTML / CSS
MongoDB误操作后使用oplog恢复数据
2022/04/11 MongoDB
Nginx配置之禁止指定IP访问
2022/05/02 Servers
css3手动实现pc端横向滚动
2022/06/21 HTML / CSS