导入JavaScript插件

不论是单独导入还一次性导入之前必须先导入jQuery库。

  • 一次性导入

    <script src="js/bootstrap.min.js"></script>

  • 单独导入,可到github去下载

    动画过渡(Transitions): transition.js

    模态弹窗(Modal): modal.js

    下拉菜单(Dropdown): dropdown.js

    滚动侦测(Scrollspy): scrollspy.js

    选项卡(Tab): tab.js

    提示框(Tooltips): tooltop.js

    弹出框(Popover): popover.js

    警告框(Alert): alert.js

    按钮(Buttons): button.js

    折叠/手风琴(Collapse): collapse.js

    图片轮播Carousel: carousel.js

    自动定位浮标Affix: affix.js

动画过渡

都是采用CSS3来实现的,所以IE6-8浏览器是不具备这些过渡动画效果。

默认情况之下,Bootstrap框架中以下组件使用了过渡动画效果:

  1. 模态弹出窗(Modal)的滑动和渐变效果;
  2. 选项卡(Tab)的渐变效果;
  3. 警告框(Alert)的渐变效果;
  4. 图片轮播(Carousel)的滑动效果。

模态弹出框

模态弹出框统一称为 Modal

  • 结构分析

    分别运用了modalmodal-dialogmodal-content样式

    弹出窗真正的内容都放置在modal-content中,其主要又包括三个部分:

    1 弹出框头部,一般使用modal-header表示,主要包括标题和关闭按钮

    2 弹出框主体,一般使用modal-body表示,弹出框的主要内容

    3 弹出框脚部,一般使用modal-footer表示,主要放置操作按钮

  • 实现原理解析

    bootstrap中的“模态弹出框”有以下几个特点:

    1、模态弹出窗是固定在浏览器中的。

    2、模态弹出窗宽度是自适应的,而且modal-dialog水平居中。

    3、当浏览器视窗大于768px时,模态弹出窗的宽度为600px。

  • 尺寸选择

    modal-lg大尺寸

    modal-sm小尺寸(默认)

  • 触发模态弹出窗2种方法

    1、模态弹出窗声明,只需要自定义两个必要的属性:data-toggle(必须为modal)和data-target(ID值)

    2、触发模态弹出窗也可以是一个链接<a>元素,那么可以使用链接元素自带的href属性替代data-target属性

    不过建议还是使用统一使用data-target的方式来触发。

  • 为弹出框增加过度动画效果

    可通过给.modal增加类名fade为模态弹出框增加一个过渡动画效果。

  • data参数说明

属性名称 类型 默认值 描述
data-toggle 字符 modal 必须且为modal,用来控制模态弹出窗的显示
data-target 字符 用户自己定义 必须,定义要触发的弹出窗是哪一个。其值可以div.modal元素独有类名,或ID值
data-backdrop 布尔值 true 是否包含一个背景div元素,如果为true,则单击该背景时关闭弹出窗,如果取值为static,则单击背景div时不会关闭
data-keyboard 布尔值 true 按键盘的ESC键可以关闭弹出窗。如果值为false,则不会关闭
data-show 布尔值 true 初始化时,弹出窗是否显示
href URL路径 空值 如果通过a元素触发模态弹出窗,其href值不是一个以#开头的值,则表示是一个url地址,模态弹出窗先加载其内容,然后替换原有的modal-content中的内容。如果href设置了地址,那么data-target则必须填写制定ID值
  • JavaScript触发

    反转(如果当前为显示,则将其关闭;如果为关闭,则将其显示):$("#themodal").modal("toggle");

    显示:$("#themodal").modal("show");

    关闭:$("#themodal").modal("hide");

  • JavaScript触发时的参数设置

$(function () {
$(".btn").click(function () {
$("#mymodal").modal({
backdrop: false, // 相当于data-backdrop
keyboard: false, // 相当于data-keyboard
show: true, // 相当于data-show
remote: "" // 相当于a标签的href
});
});
});
  • JavaScript触发时的事件

    模态弹出窗支持四种类型的事件,分别是模态弹出窗的弹出前、弹出后,关闭前、关闭后
事件类型 描述
show.bs.modal 在show方法调用时立即触发(尚未显示之前);如果单击了一个元素,那么该元素将作为事件relatedTarget事件
shown.bs.modal 该事件在模态窗完全显示给用户之后(并且等CSS动画完成之后)触发;如果单击了一个元素,那么该元素将作为事件relatedTarget事件
hide.bs.modal 在hide方法调用时(但还未关闭隐藏)立即触发
hidden.bs.modal 该事件在模态弹出窗完全隐藏之后(并CSS动画漂亮完成之后)触发
$('#myModal').on('hidden.bs.modal', function (e) {
// 处理代码...
})
  • 示例
<!-- data-toggle必须为modal -->
<!-- data-target为div.modal元素独有类名,或ID值 -->
<button class="btn btn-primary" data-toggle="modal" data-target="#mymodal-data" data-backdrop="static" data-keyboard="false" type="button">通过data-target触发</button>
<!-- 模态弹出窗,由modal、modal-dialog和modal-content组成 -->
<!-- modal-lg大尺寸,还有modal-sm -->
<!-- fade弹出框过度动画效果 -->
<div class="modal fade modal-lg" id="mymodal-data" tabindex="-1" role="dialog" aria-labelledby="mySmallModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<!-- modal-header弹出框头部 -->
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
<h4 class="modal-title">模态弹出窗标题</h4>
</div>
<!-- modal-body弹出框主体 -->
<div class="modal-body">
<p>模态弹出窗主体内容</p>
</div>
<!-- modal-footer弹出框脚部 -->
<div class="modal-footer">
<!-- data-dismiss="modal"关闭模态弹出窗 -->
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary">保存</button>
</div>
</div>
</div>
</div>

《玩转Bootstrap(JS插件篇)》笔记的更多相关文章

  1. HTML+CSS笔记 CSS笔记集合

    HTML+CSS笔记 表格,超链接,图片,表单 涉及内容:表格,超链接,图片,表单 HTML+CSS笔记 CSS入门 涉及内容:简介,优势,语法说明,代码注释,CSS样式位置,不同样式优先级,选择器, ...

  2. CSS笔记--选择器

    CSS笔记--选择器 mate的使用 <meta charset="UTF-8"> <title>Document</title> <me ...

  3. HTML+CSS笔记 CSS中级 一些小技巧

    水平居中 行内元素的水平居中 </a></li> <li><a href="#">2</a></li> &l ...

  4. HTML+CSS笔记 CSS中级 颜色&长度值

    颜色值 在网页中的颜色设置是非常重要,有字体颜色(color).背景颜色(background-color).边框颜色(border)等,设置颜色的方法也有很多种: 1.英文命令颜色 语法: p{co ...

  5. HTML+CSS笔记 CSS中级 缩写入门

    盒子模型代码简写 回忆盒模型时外边距(margin).内边距(padding)和边框(border)设置上下左右四个方向的边距是按照顺时针方向设置的:上右下左. 语法: margin:10px 15p ...

  6. HTML+CSS笔记 CSS进阶再续

    CSS的布局模型 清楚了CSS 盒模型的基本概念. 盒模型类型, 我们就可以深入探讨网页布局的基本模型了.布局模型与盒模型一样都是 CSS 最基本. 最核心的概念. 但布局模型是建立在盒模型基础之上, ...

  7. HTML+CSS笔记 CSS进阶续集

    元素分类 在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素.内联元素(又叫行内元素)和内联块状元素. 常用的块状元素有: <div>.<p>.<h1&g ...

  8. HTML+CSS笔记 CSS进阶

    文字排版 字体 我们可以使用css样式为网页中的文字设置字体.字号.颜色等样式属性. 语法: body{font-family:"宋体";} 这里注意不要设置不常用的字体,因为如果 ...

  9. HTML+CSS笔记 CSS入门续集

    继承 CSS的某些样式是具有继承性的,那么什么是继承呢?继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代(标签). 语法: p{color:red;} <p> ...

  10. HTML+CSS笔记 CSS入门

    简介: </span>年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的<span>脚本解释程序</span>,作为ABC语言的一种继承. & ...

随机推荐

  1. easyui实现权限管理

    在js中: function makeEasyTree(data){ if(!data) return []; var _newData = []; //最终返回结果 var _treeArray = ...

  2. cocos2d-x 那些常犯的错误

    Label::_label; if(_label==NULL){ //初始化_label的代码 } //指针默认值不等于NULL,需要赋初始值Label::_label=NULL; string st ...

  3. [学习opencv]高斯、中值、均值、双边滤波

    http://www.cnblogs.com/tiandsp/archive/2013/04/20/3031862.html [学习opencv]高斯.中值.均值.双边滤波 四种经典滤波算法,在ope ...

  4. Windows应用程序要点

    一个完整的Windows应用程序除了WinMain函数外,还包含用于处理用户动作和窗口消息的窗口函数.  Windows应用程序具有的一些特性: 消息驱动机制 图形设备接口(GDI) 基于资源的程序设 ...

  5. Android编译,模块的编译和CLEAN

    在Android源代码目录下的build目录下,有个脚本文件envsetup.sh: $ . build/envsetup.sh 注:该命令的前面的逗点(.),相当于source. 执行这个脚本文件后 ...

  6. GPRS DTU概念及DTU的工作原理(转)

    源:http://blog.csdn.net/bichenggui/article/details/7889638 最近需要开发一个基于GRPS DTU数据传输的数据中心方案,于是找了一些资料.个人觉 ...

  7. PHP的json_encode中文被转码的问题

    在php5.2中做json_encode的时候.中文会被unicode编码, php5.3加入了options参数, 5.4以后才加入JSON_UNESCAPED_UNICODE,这个参数,不需要做e ...

  8. Python3基础 list() 将一个字符串转换成列表

    镇场诗: 诚听如来语,顿舍世间名与利.愿做地藏徒,广演是经阎浮提. 愿尽吾所学,成就一良心博客.愿诸后来人,重现智慧清净体.-------------------------------------- ...

  9. USACO 1.3.2

    题目链接:USACO 1.3.2 这道题有点小坑,不是算法错了,而是文件名,是barn1不是barnl,恕我眼拙,找了十五分钟... 肯定是木板的个数用的越多越好,这样可以减少空隙. 简单的贪心,将每 ...

  10. 基于css3的环形动态进度条(原创)

    基于css3实现的环形动态加载条,也用到了jquery.当时的想法是通过两个半圆的转动,来实现相应的效果,其实用css3的animation也可以实现这种效果.之所以用jquery是因为通过jquer ...