《玩转Bootstrap(JS插件篇)》笔记
导入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框架中以下组件使用了过渡动画效果:
- 模态弹出窗(Modal)的滑动和渐变效果;
- 选项卡(Tab)的渐变效果;
- 警告框(Alert)的渐变效果;
- 图片轮播(Carousel)的滑动效果。
模态弹出框
模态弹出框统一称为 Modal
结构分析
分别运用了modal
、modal-dialog
和modal-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">×</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插件篇)》笔记的更多相关文章
- HTML+CSS笔记 CSS笔记集合
HTML+CSS笔记 表格,超链接,图片,表单 涉及内容:表格,超链接,图片,表单 HTML+CSS笔记 CSS入门 涉及内容:简介,优势,语法说明,代码注释,CSS样式位置,不同样式优先级,选择器, ...
- CSS笔记--选择器
CSS笔记--选择器 mate的使用 <meta charset="UTF-8"> <title>Document</title> <me ...
- HTML+CSS笔记 CSS中级 一些小技巧
水平居中 行内元素的水平居中 </a></li> <li><a href="#">2</a></li> &l ...
- HTML+CSS笔记 CSS中级 颜色&长度值
颜色值 在网页中的颜色设置是非常重要,有字体颜色(color).背景颜色(background-color).边框颜色(border)等,设置颜色的方法也有很多种: 1.英文命令颜色 语法: p{co ...
- HTML+CSS笔记 CSS中级 缩写入门
盒子模型代码简写 回忆盒模型时外边距(margin).内边距(padding)和边框(border)设置上下左右四个方向的边距是按照顺时针方向设置的:上右下左. 语法: margin:10px 15p ...
- HTML+CSS笔记 CSS进阶再续
CSS的布局模型 清楚了CSS 盒模型的基本概念. 盒模型类型, 我们就可以深入探讨网页布局的基本模型了.布局模型与盒模型一样都是 CSS 最基本. 最核心的概念. 但布局模型是建立在盒模型基础之上, ...
- HTML+CSS笔记 CSS进阶续集
元素分类 在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素.内联元素(又叫行内元素)和内联块状元素. 常用的块状元素有: <div>.<p>.<h1&g ...
- HTML+CSS笔记 CSS进阶
文字排版 字体 我们可以使用css样式为网页中的文字设置字体.字号.颜色等样式属性. 语法: body{font-family:"宋体";} 这里注意不要设置不常用的字体,因为如果 ...
- HTML+CSS笔记 CSS入门续集
继承 CSS的某些样式是具有继承性的,那么什么是继承呢?继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代(标签). 语法: p{color:red;} <p> ...
- HTML+CSS笔记 CSS入门
简介: </span>年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的<span>脚本解释程序</span>,作为ABC语言的一种继承. & ...
随机推荐
- easyui实现权限管理
在js中: function makeEasyTree(data){ if(!data) return []; var _newData = []; //最终返回结果 var _treeArray = ...
- cocos2d-x 那些常犯的错误
Label::_label; if(_label==NULL){ //初始化_label的代码 } //指针默认值不等于NULL,需要赋初始值Label::_label=NULL; string st ...
- [学习opencv]高斯、中值、均值、双边滤波
http://www.cnblogs.com/tiandsp/archive/2013/04/20/3031862.html [学习opencv]高斯.中值.均值.双边滤波 四种经典滤波算法,在ope ...
- Windows应用程序要点
一个完整的Windows应用程序除了WinMain函数外,还包含用于处理用户动作和窗口消息的窗口函数. Windows应用程序具有的一些特性: 消息驱动机制 图形设备接口(GDI) 基于资源的程序设 ...
- Android编译,模块的编译和CLEAN
在Android源代码目录下的build目录下,有个脚本文件envsetup.sh: $ . build/envsetup.sh 注:该命令的前面的逗点(.),相当于source. 执行这个脚本文件后 ...
- GPRS DTU概念及DTU的工作原理(转)
源:http://blog.csdn.net/bichenggui/article/details/7889638 最近需要开发一个基于GRPS DTU数据传输的数据中心方案,于是找了一些资料.个人觉 ...
- PHP的json_encode中文被转码的问题
在php5.2中做json_encode的时候.中文会被unicode编码, php5.3加入了options参数, 5.4以后才加入JSON_UNESCAPED_UNICODE,这个参数,不需要做e ...
- Python3基础 list() 将一个字符串转换成列表
镇场诗: 诚听如来语,顿舍世间名与利.愿做地藏徒,广演是经阎浮提. 愿尽吾所学,成就一良心博客.愿诸后来人,重现智慧清净体.-------------------------------------- ...
- USACO 1.3.2
题目链接:USACO 1.3.2 这道题有点小坑,不是算法错了,而是文件名,是barn1不是barnl,恕我眼拙,找了十五分钟... 肯定是木板的个数用的越多越好,这样可以减少空隙. 简单的贪心,将每 ...
- 基于css3的环形动态进度条(原创)
基于css3实现的环形动态加载条,也用到了jquery.当时的想法是通过两个半圆的转动,来实现相应的效果,其实用css3的animation也可以实现这种效果.之所以用jquery是因为通过jquer ...