导入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. HTML5新特性总览

    html5的革新带来了更多的功能,简单的一个标签遍可以做到很多事情,例如 (1)canvas画图,vedio视屏,geolocation等等新标签. 如何检查浏览器是否支持这些新特性? 这样就足够,改 ...

  2. 为什么Hbase能实现快速的查询

    你的快速是指什么? 是根据亿级的记录中快速查询,还是说以实时的方式查询数据. A:如果快速查询(从磁盘读数据),hbase是根据rowkey查询的,只要能快速的定位rowkey,  就能实现快速的查询 ...

  3. Servlet简介及使用

    javaweb学习总结(五)——Servlet开发(一) 一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口 ...

  4. APK瘦身

    APK瘦身 主要从一下三方面来瘦身: 1. Java 源代码 1) ,这方面主要是通过最简洁的代码实现最直接的功能,还有就是提出上线前不必要的java代码,可以使用UCDector进行分析,从而对代码 ...

  5. hdu_5648_DZY Loves Math

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5648 题意:给你n,m 让你求出 for(1-n)for(1-m)gcd(i&j,i|j)的s ...

  6. jq中的css-Dom

    1,height() ,width() 此方法用来获取匹配元素的高和宽的值,如果括号内有值,则是修改匹配元素的值, 2.offset() 此方法的作用是获取元素在当前视窗的相对偏移,其中返回的对象包含 ...

  7. new del 问题

    实验一: new_del_caller工程(静态库) -new_del_caller.cpp #include <new> void new_del_caller() { ]; delet ...

  8. 用Eclipse 统计代码行数小技巧

    今天公司SQA问我目前项目代码行数有多少,我当时就是想,以前好像写过类似的统计工具但是一时又找不到 公司网络又不能下载,所以想想eclipse是不是又类似功能,找了下没有,但突然一想有一个转弯方法:统 ...

  9. Textbox服务器控件

    <body> <form id="form1" runat="server"> <div> 姓名:<asp:TextB ...

  10. ASP.NET WEB开发,实现上传图片

    protected void btnUp_Click(object sender, EventArgs e) { Boolean fileOK = false; String path = Serve ...