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 相关文章推荐
浅析jquery的js图表组件highcharts
Mar 06 Javascript
jquery幻灯片插件bxslider样式改进实例
Oct 15 Javascript
JS在可编辑的div中的光标位置插入内容的方法
Nov 20 Javascript
jquery事件preventDefault()方法用法实例
Jan 16 Javascript
JavaScript编程中容易出BUG的几点小知识
Jan 31 Javascript
jQuery实现左右切换焦点图
Apr 03 Javascript
JavaScript编写简单的计算器
Nov 25 Javascript
详解使用JS如何制作简单的ASCII图与单极图
Mar 31 Javascript
bootstrap fileinput组件整合Springmvc上传图片到本地磁盘
May 11 Javascript
js获取元素的偏移量offset简单方法(必看)
Jul 05 Javascript
vue 使用ref 让父组件调用子组件的方法
Feb 08 Javascript
微信小程序canvas开发水果老虎机的思路详解
Feb 07 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
动画 《Pokemon Sword·Shield》系列WEB动画《薄明之翼》第2话声优阵容公开!
2020/03/06 日漫
PHP中使用CURL伪造来路抓取页面或文件
2011/05/04 PHP
浅谈php处理后端&amp;接口访问超时的解决方法
2016/10/29 PHP
javascript 兼容FF的onmouseenter和onmouseleave的代码
2008/07/19 Javascript
24款非常有用的 jQuery 插件分享
2011/04/06 Javascript
js控制href内容的连接内容的变化示例
2014/04/30 Javascript
iPhone手机上搭建nodejs服务器步骤方法
2015/07/06 NodeJs
让图片跳跃起来  javascript图片轮播特效
2016/02/16 Javascript
DIV+CSS+jQ实现省市联动可扩展
2016/06/22 Javascript
AngularJS 面试题集锦
2016/09/06 Javascript
JavaScript实现短信倒计时60s
2017/10/09 Javascript
详解react关于事件绑定this的四种方式
2018/03/09 Javascript
JavaScript常见事件处理程序实例总结
2019/01/05 Javascript
Vue中的循环及修改差值表达式的方法
2019/08/29 Javascript
详解element-ui中表单验证的三种方式
2019/09/18 Javascript
python魔法方法-属性访问控制详解
2016/07/25 Python
Django日志模块logging的配置详解
2017/02/14 Python
深入理解Python中的内置常量
2017/05/20 Python
基于Python对象引用、可变性和垃圾回收详解
2017/08/21 Python
python字典setdefault方法和get方法使用实例
2019/12/25 Python
Django用数据库表反向生成models类知识点详解
2020/03/25 Python
python实现AdaBoost算法的示例
2020/10/03 Python
阿迪达斯香港官网:adidas香港
2019/11/09 全球购物
新电JAVA笔试题目
2014/08/31 面试题
解释DataSet(ds) 和 ds as DataSet 的含义
2014/07/27 面试题
Java语言程序设计测试题改错题部分
2014/07/22 面试题
J2EE中常用的名词进行解释
2015/11/09 面试题
高中三年学习生活的自我评价
2013/10/10 职场文书
办公室内勤工作职责
2013/12/11 职场文书
银行职员思想汇报
2013/12/31 职场文书
教师校本培训方案
2014/02/26 职场文书
《水上飞机》教学反思
2014/04/10 职场文书
考教师资格证不要错过的4个最佳时机
2019/07/17 职场文书
pytorch常用数据类型所占字节数对照表一览
2021/05/17 Python
python异常中else的实例用法
2021/06/15 Python
mysql sum(if())和count(if())的用法说明
2022/01/18 MySQL