BootStrap modal模态弹窗使用小结


Posted in Javascript onOctober 26, 2016

模态弹窗

触发元素基本结构:

<button class="btn btn-success" data-target="#modal" data-toggle="modal">modal</button>

内容元素基本结构:

<div class="modal fade" id="modal">
 <div class="modal-dialog">
 <div class="modal-content">
 <div class="modal-header">
 <button class="close" data-dismiss="modal">×</button>
 title
 </div>
 <div class="modal-body">
 this is main content
 </div>
 <div class="modal-footer">
 <button class="btn btn-default" data-dismiss="modal">cancel</button>
 <button class="btn btn-success">ok</button>
 </div>
 </div>
 </div>
 </div>

触发元素的关键属性为data-target和data-toggle,data-target和具体的弹窗互相对应,data-toggle="modal"提供了HTML触发条件

弹窗内容要正确嵌套,弹窗的出现和隐藏的动画要设置在最外层

可以通过modal-sm和modal-lg改变弹窗的大小,这两个class要设置在modal-dialog那一层

modal-header中的关闭按钮的关键属性为class="close"该class实现了样式的改变,data-dismiss="modal"提供了HTML关闭的触发条件

模态弹窗提供了四个属性,这四个属性通常设置在模态弹窗上class="modal"那一层(内容DOM的最外层),四个属性分别为:

1.data-backdrop:是否包含一个背景,默认值为true同时单击背景可以关闭模态窗,设置为data-backdrop="static"则单击背景时不关闭,设置为backdrop="false"则不存在背景

2.data-keyboard:按下ESC时是否关闭模态窗默认值为true即按下时关闭模态窗,设置为data-keyboard="false"则在点击ESC时不再关闭模态窗(该属性要想生效要在最外层设置属性tabindex)

3.data-show:初始化时是否显示默认值为true即初始时显示,data-show="false"则初始化时不显示第一次点击触发元素准备模态窗,在点击一次开始显示模态窗

4.href:加载其他内容

JS使用方法

模态窗提供了四个事件:

1.show.bs.modal在显示之前触发

2.shown.bs.modal在显示之后触发

3.hide.bs.modal在隐藏之前触发

4.hidden.bs.modal在隐藏之后触发

使用方式为:

$("#modal").on("shown.bs.modal",function(){
 alert("already show")
})

如果我们在模态窗中使用了input表单元素,如果需要在每次显示模态窗是input可以获取焦点,就需要使用shown.bs.modal了

模态弹窗也提供勒三个参数:

1.toggle切换模态窗的显示隐藏

2.show显示模态窗

3.hide隐藏模态窗

使用方式为:

$("#modal").modal("show")

模态窗提供的四个属性同样可以通过JS方式来使用,用JS使用时四个属性分别为:backdrop、keyboard、show、remote

使用方式为:

$("#modal").modal({
 backdrop:"static",
 keyboard:false,
 show:false
})

更多内容请点击专题《Bootstrap Modal使用教程》进行学习,希望大家喜欢。

如果大家还想深入学习,可以点击这里进行学习,再为大家附两个精彩的专题:Bootstrap学习教程 Bootstrap实战教程

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS 模态对话框和非模态对话框操作技巧汇总
Apr 15 Javascript
让angularjs支持浏览器自动填表
Nov 10 Javascript
jQuery插件制作之参数用法实例分析
Jun 01 Javascript
jQuery下拉美化搜索表单效果代码分享
Aug 25 Javascript
js实现n秒倒计时后才可以点击的效果
Dec 20 Javascript
jQuery如何解决IE输入框不能输入的问题
Oct 08 Javascript
jstl中判断list中是否包含某个值的简单方法
Oct 14 Javascript
详解js加减乘除精确计算
Mar 19 Javascript
Vue侦测相关api的实现方法
May 22 Javascript
生成无限制的微信小程序码的示例代码
Sep 20 Javascript
微信小程序返回箭头跳转到指定页面实例解析
Oct 08 Javascript
javascript设计模式 ? 访问者模式原理与用法实例分析
Apr 26 Javascript
BootStrap实现带有增删改查功能的表格(DEMO详解)
Oct 26 #Javascript
BootStrap tooltip提示框使用小结
Oct 26 #Javascript
Bootstrap CDN和本地化环境搭建
Oct 26 #Javascript
浅谈jquery之on()绑定事件和off()解除绑定事件
Oct 26 #Javascript
通过网页查看JS源码中汉字显示乱码的解决方法
Oct 26 #Javascript
Bootstrap 实现查询的完美方法
Oct 26 #Javascript
jquery移除了live()、die(),新版事件绑定on()、off()的方法
Oct 26 #Javascript
You might like
安装PHP可能遇到的问题“无法载入mysql扩展” 的解决方法
2007/04/16 PHP
PHP详细彻底学习Smarty
2008/03/27 PHP
FleaPHP的安全设置方法
2008/09/15 PHP
Opcache导致php-fpm崩溃nginx返回502
2015/03/02 PHP
关于laravel 日志写入失败问题汇总
2019/10/17 PHP
jquery 查找新建元素代码
2010/07/06 Javascript
JS两种定义方式的区别、内部原理
2013/11/21 Javascript
浅析JQuery UI Dialog的样式设置问题
2013/12/18 Javascript
100个不能错过的实用JS自定义函数
2014/03/05 Javascript
jquery动态添加删除一行数据示例
2014/06/12 Javascript
javascript定义变量时加var与不加var的区别
2014/12/22 Javascript
封装好的js判断操作系统与浏览器代码分享
2015/01/09 Javascript
jQuery团购倒计时特效实现方法
2015/05/07 Javascript
深入浅析同源策略和跨域访问
2015/11/26 Javascript
jQuery增加和删除表格项目及实现表格项目排序的方法
2016/05/30 Javascript
JS数组搜索之折半搜索实现方法分析
2017/03/27 Javascript
vue2.0 keep-alive最佳实践
2017/07/06 Javascript
npm配置国内镜像资源+淘宝镜像的方法
2018/09/07 Javascript
vue响应式系统之observe、watcher、dep的源码解析
2019/04/09 Javascript
JS操作Fckeditor的一些常用方法(获取、插入等)
2020/02/19 Javascript
pyqt5实现俄罗斯方块游戏
2019/01/11 Python
python3 打印输出字典中特定的某个key的方法示例
2019/07/06 Python
python logging添加filter教程
2019/12/24 Python
Python xlrd excel文件操作代码实例
2020/03/10 Python
html5的canvas实现3d雪花飘舞效果
2013/12/27 HTML / CSS
荷兰最大的儿童服装店:The Kids Republic
2019/04/13 全球购物
女士鞋子、包包和服装在线,第一款10美元:ShoeDazzle
2019/07/26 全球购物
PHP面试题及答案一
2012/06/18 面试题
银行批评与自我批评
2014/02/10 职场文书
师恩难忘教学反思
2014/04/27 职场文书
机票销售员态度不好检讨书
2014/09/27 职场文书
护士长2014年度工作总结
2014/11/11 职场文书
2014年小学体育工作总结
2014/12/11 职场文书
python数据库批量插入数据的实现(executemany的使用)
2021/04/30 Python
python中redis包操作数据库的教程
2022/04/19 Python
JAVA springCloud项目搭建流程
2022/05/11 Java/Android