第 17 章 按钮和折叠插件

学习要点:

+

1.按钮

2.折叠

主讲教师:李炎恢

+

本节课我们主要学习一下 Bootstrap 中的按钮和折叠插件。

+

一.按钮

可以通过按钮插件创建不同状态的按钮。

+

//单个切换。

+

  1. <button class="btn btn-primary" data-toggle="button" autocomplete="off">单个切换</button>

注:在 Firefox 多次页面加载时,按钮可能保持表单的禁用或选择状态。解决方案是:添加 autocomplete="off"。

+

//单选按钮

+

  1. <div class="btn-group" data-toggle="buttons">
  2. <label for="" class="btn btn-primary active">
  3. <input type="radio" name="sex" autocomplete="off" checked></label>
  4. <label for="" class="btn btn-primary">
  5. <input type="radio" name="sex" autocomplete="off"></label>
  6. </div>

//复选按钮

+

  1. <div class="btn-group" data-toggle="buttons">
  2. <label for="" class="btn btn-primary active">
  3. <input type="checkbox" name="fa" autocomplete="off" checked> 音乐 </label>
  4. <label for="" class="btn btn-primary">
  5. <input type="checkbox" name="fa" autocomplete="off"> 体育 </label>
  6. <label for="" class="btn btn-primary">
  7. <input type="checkbox" name="fa" autocomplete="off"> 美术 </label>
  8. <label for="" class="btn btn-primary">
  9. <input type="checkbox" name="fa" autocomplete="off"> 电脑 </label>
  10. </div>

//加载状态

+

  1. <button id="myButton" type="button" data-loading-text="Loading..."class="btn btn-primary" autocomplete="off"> 加载状态 </button>
  1. $('#myButton').on('click', function() { var btn = $(this).button('loading');
  2. setTimeout(function() {
  3. btn.button('reset');
  4. }, 1000);
  5. });

Button 插件中的 button 方法中有三个参数: toggle、 reset、 string(比如 loading、complete)。

+

//可代替 data-toggle="button"

+

  1. $('button').on('click', function() {
  2. $(this).button('toggle');
  3. })

二.折叠

通过点击可以折叠内容。

+

//基本实例

+

  1. <button class="btn btn-primary" data-toggle="collapse" data-target="#content"> Bootstrap </button>
  2.  
  3. <div class="collapse" id="content">
  4. <div class="well"> Bootstrap 是 Twitter 推出的一个用于前端开发的开源工具包。它由
  5. Twitter 的设计师 Mark Otto 和 Jacob Thornton 合作开发,是一个 CSS/HTML 框架。目前,Bootstrap 最新版本为 3.0 。 </div>
  6. </div>

//手风琴折叠

+

  1. <div class="panel-group" id="accordion">
  2. <div class="panel panel-default">
  3. <div class="panel-heading">
  4.  
  5. <h4 class="panel-title"><a href="#collapseOne" data-toggle="collapse" data-parent="#accordion">点击我进行展示,再点击我进行折叠,第一部分</a></h4>
  6. </div>
  7. <div id="collapseOne" class="panel-collapse collapse in">
  8. <div class="panel-body"> 这里是第一部分。 </div>
  9. </div>
  10. </div>
  11.  
  12. <div class="panel panel-default">
  13. <div class="panel-heading">
  14. <h4 class="panel-title"><a href="#collapseTwo" data-toggle="collapse" data-parent="#accordion">点击我进行展示,再点击我进行折叠,第二部分</a></h4>
  15. </div>
  16. <div id="collapseTwo" class="panel-collapse collapse">
  17. <div class="panel-body"> 这里是第二部分。 </div>
  18. </div>
  19. </div>
  20.  
  21. <div class="panel panel-default">
  22. <div class="panel-heading">
  23. <h4 class="panel-title"><a href="#collapseThree" data-toggle="collapse" data-parent="#accordion">点击我进行展示,再点击我进行折叠,第三部分</a></h4>
  24. </div>
  25. <div id="collapseThree" class="panel-collapse collapse">
  26. <div class="panel-body"> 这里是第三部分。 </div>
  27. </div>
  28. </div>
  29. </div>

第 17 章 按钮和折叠插件 - 图1

//手风琴效果

+

  1. $('#collapseOne, #collapseTwo,#collapseThree, #collapseFour').collapse({
  2. parent : '#accordion',
  3. toggle : false,
  4. });

//手动调用

+

  1. $('button').on('click', function() {
  2. $('#collapseOne').collapse({
  3. toggle : true,
  4. });
  5. });

//collapse 方法还提供了三个参数:hide、show、toggle。

+

  1. $('#collapseOne').collapse('hide');
  2. $('#collapseTwo').collapse('show');
  3. $('button').on('click', function() {
  4. $('#collapseOne').collapse('toggle');
  5. });

Collapse 插件中事件有四种。

+

第 17 章 按钮和折叠插件 - 图2

//事件,其他雷同

+

  1. $('#collapseOne').on('show.bs.collapse', function() {
  2. alert('当 show 方法调用时触发');
  3. });