全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

整理关于Bootstrap模态弹出框的慕课笔记

整理自慕课笔记

插件的源文件:modal.js。

在 Bootstrap 框架中把模态弹出框统一称为 Modal。这种弹出框效果在大多数 Web 网站的交互中都可见。比如点击一个按钮弹出一个框,弹出的框可能是一段文件描述,也可能带有按钮操作,也有可能弹出的是一张图片。如下图所示:

<body>
<button class="btn btn-primary" type="button">点击我</button>
<div class="modal" id="mymodal">
 <div class="modal-dialog">
  <div class="modal-content">
   <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>
   <div class="modal-body">
    <p>模态弹出窗主体内容</p>
   </div>
   <div class="modal-footer">
    <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
    <button type="button" class="btn btn-primary">保存</button>
   </div>
  </div><!-- /.modal-content -->
 </div><!-- /.modal-dialog -->
</div><!-- /.modal -->

<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
<script src="http://cdn.bootcss.com/bootstrap/2.3.1/js/bootstrap-transition.js"></script>
<script src="http://cdn.bootcss.com/bootstrap/2.3.1/js/bootstrap-modal.js"></script>
<script>
 $(function(){
 $(".btn").click(function(){
  $("#mymodal").modal("toggle");
 });
 });
</script>
</body>

结构分析

Bootstrap框架中的模态弹出框,分别运用了“modal”、“modal-dialog”和“modal-content”样式,而弹出窗真正的内容都放置在“modal-content”中,其主要又包括三个部分:
1. 弹出框头部,一般使用“modal-header”表示,主要包括标题和关闭按钮
2. 弹出框主体,一般使用“modal-body”表示,弹出框的主要内容
3. 弹出框脚部,一般使用“modal-footer”表示,主要放置操作按钮

<div class="modal show">
 <div class="modal-dialog">
  <div class="modal-content">
   <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>
   <div class="modal-body">
    <p>模态弹出窗主体内容</p>
   </div>
   <div class="modal-footer">
    <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
    <button type="button" class="btn btn-primary">保存</button>
   </div>
  </div><!-- /.modal-content -->
 </div><!-- /.modal-dialog -->
</div><!-- /.modal -->

实现原理

bootstrap中的“模态弹出框”有以下几个特点:
1、模态弹出窗是固定在浏览器中的。
2、在全屏状态下,模态弹出窗宽度是自适应的,而且modal-dialog水平居中。
3、当浏览器视窗大于768px时,模态弹出窗的宽度为600px。

两种尺寸选择

除此之外,Bootstrap框架还为模态弹出窗提供了不同尺寸,一个是大尺寸样式“modal-lg”,另一个是小尺寸样式“modal-sm”。其结构上稍做调整:

<divclass="modal-dialog modal-lg">

触发方法

众所周知,模态弹出窗在页面加载完成时,是被隐藏在页面中的,只有通过一定的动作(事件)才能触发模态弹出窗的显示。在Bootstrap框架中实现方法有2种,接下来分别来介绍这2种触发模态弹出窗的使用方法。

声明式触发方法

方法一

模态弹出窗声明,只需要自定义两个必要的属性:data-toggle和data-target(bootstrap中声明式触发方法一般依赖于这些自定义的data-xxx 属性。比如data-toggle=”” 或者 data-dismiss=”“)。例如:

<!-- 触发模态弹出窗的元素 -->
<button type="button" data-toggle="modal" data-target="#mymodal" class="btn btn-primary">点击我会弹出模态弹出窗</button>
<!-- 模态弹出窗 -->
<div class="modal fade" id="mymodal">
 <div class="modal-dialog">
  <div class="modal-content">
  <!-- 模态弹出窗内容 -->
  </div>
 </div>
</div>

注意以下事项:
1、data-toggle必须设置为modal(toggle中文翻译过来就是触发器);
2、data-target可以设置为CSS的选择符,也可以设置为模态弹出窗的ID值,一般情况设置为模态弹出窗的ID值,因为ID值是唯一的值。

方法二

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

<!-- 触发模态弹出窗的元素 -->
<a data-toggle="modal" href="#mymodal" rel="external nofollow" class=" btn btn-primary" >点击我会弹出模态弹出窗</a>
<!-- 模态弹出窗 -->
<div class="modal fade" id="mymodal" >
 <div class="modal-dialog" >
  <div class="modal-content" >
  <!-- 模态弹出窗内容 -->
  </div>
 </div>
</div>

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

增加过度动画

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

<button class="btn btn-primary" data-toggle="modal" data-target=".bs-example-modal-sm">
小的模态弹出窗
</button><div class="modal fade bs-example-modal-sm" tabindex="-1" role="dialog" aria-labelledby="mySmallModalLabel" aria-hidden="true">
 <div class="modal-dialog modal-sm">
  <div class="modal-content">
   <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>
   <div class="modal-body">
    <p>模态弹出窗主体内容</p>
   </div>
   <div class="modal-footer">
    <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
    <button type="button" class="btn btn-primary">保存</button>
   </div>
  </div>
 </div>
</div>

模态弹出窗的使用(data-参数说明)

除了通过data-toggle和data-target来控制模态弹出窗之外,Bootstrap框架针对模态弹出框还提供了其他自定义data-属性,来控制模态弹出窗。比如说:是否有灰色背景modal-backdrop,是否可以按ESC键关闭模态弹出窗。有关于Modal弹出窗自定义属性相关说明如下所示:

使用(JavaScript触发)

除了使用自定义属性触发模态弹出框之外,还可以通过JavaScript方法来触发模态弹出窗。通过给一个元素一个事件,来触发。比如说给一个按钮一个单击事件,然后触发模态弹出窗。如下面的一个简单示例:

<!-- 触发模态弹出窗元素 -->
<button class="btn btn-primary" type="button">点击我</button>
<!-- 模态弹出窗内容 -->
<div class="modal" id="mymodal">
 <div class="modal-dialog">
  <div class="modal-content">
   <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>
   <div class="modal-body">
    <p>模态弹出窗主体内容</p>
   </div>
   <div class="modal-footer">
    <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
    <button type="button" class="btn btn-primary">保存</button>
   </div>
  </div><!-- /.modal-content -->
 </div><!-- /.modal-dialog -->
</div><!-- /.modal -->

JavaScript触发的弹出窗代码:

$(function(){
 $(".btn").click(function(){
 $("#mymodal").modal();
 });
});

设置参数

使用JavaScript触发模态弹出窗时,Bootstrap框架提供了一些设置,主要包括属性设置、参数设置和事件设置。

属性设置

模态弹出窗默认支持的自定义属性主要有:

比如你不想让用户按ESC键关闭模态弹出窗,你就可以这样做:

$(function(){
 $(".btn").click(function(){
  $("#mymodal").modal({
   keyboard:false
  });
 });
});

参数设置

在Bootstrap框架中还为模态弹出窗提供了三种参数设置,具体说明如下:

事件设置

模态弹出窗还支持四种类型的事件,分别是模态弹出窗的弹出前、弹出后,关闭前、关闭后,具体描述如下:

调用方法也非常简单:

$('#myModal').on('hidden.bs.modal', function (e) {
 // 处理代码...
})

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


# Bootstrap  # 模态弹出框  # modal  # 模态框  # 如何使用Bootstrap的modal组件自定义alert  # confirm和modal对话框  # Bootstrap每天必学之模态框(Modal)插件  # Bootstrap模态框(modal)垂直居中的实例代码  # Bootstrap弹出框(modal)垂直居中的问题及解决方案详解  # Bootstrap Modal遮罩弹出层(完整版)  # 解决bootstrap中modal遇到Esc键无法关闭页面  # Bootstrap Modal对话框如何在关闭时触发事件  # BootStrap modal模态弹窗使用小结  # 浅析BootStrap中Modal(模态框)使用心得  # Bootstrap modal使用及点击外部不消失的解决方法  # 弹出  # 模态  # 自定义  # 设置为  # 我会  # 参数设置  # 所示  # 窗内  # 主要包括  # 还为  # 的是  # 是一个  # 几个  # 也有  # 还可以  # 两种  # 你不  # 也可  # 这样做  # 三种 


相关文章: 网站制作大概要多少钱一个,做一个平台网站大概多少钱?  香港网站服务器数量如何影响SEO优化效果?  浙江网站制作公司有哪些,浙江栢塑信息技术有限公司定制网站做的怎么样?  如何快速搭建虚拟主机网站?新手必看指南  微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?  如何在阿里云通过域名搭建网站?  怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?  C++用Dijkstra(迪杰斯特拉)算法求最短路径  如何在万网开始建站?分步指南解析  外贸公司网站制作哪家好,maersk船公司官网?  如何在宝塔面板中修改默认建站目录?  学校免费自助建站系统:智能生成+拖拽设计+多端适配  网站制作免费,什么网站能看正片电影?  建站之星安装失败:服务器环境不兼容?  存储型VPS适合搭建中小型网站吗?  内网网站制作软件,内网的网站如何发布到外网?  如何快速查询网站的真实建站时间?  如何做网站制作流程,*游戏网站怎么搭建?  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  网站网页制作专业公司,怎样制作自己的网页?  西安专业网站制作公司有哪些,陕西省建行官方网站?  南阳网站制作公司推荐,小学电子版试卷去哪里找资源好?  开封网站制作公司,网络用语开封是什么意思?  临沂网站制作企业,临沂第三中学官方网站?  网站制作网站,深圳做网站哪家比较好?  如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?  C#如何序列化对象为XML XmlSerializer用法  名字制作网站免费,所有小说网站的名字?  如何在Mac上搭建Golang开发环境_使用Homebrew安装和管理Go版本  建站之星代理如何优化在线客服效率?  建站之星导航如何优化提升用户体验?  网站制作说明怎么写,简述网页设计的流程并说明原因?  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  济南网站建设制作公司,室内设计网站一般都有哪些功能?  网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?  制作假网页,招聘网的薪资待遇,会有靠谱的吗?一面试又各种折扣?  定制建站流程步骤详解:一站式方案设计与开发指南  如何在万网自助建站中设置域名及备案?  北京网站制作的公司有哪些,北京白云观官方网站?  企业网站制作公司网页,推荐几家专业的天津网站制作公司?  免费视频制作网站,更新又快又好的免费电影网站?  如何快速搭建高效WAP手机网站?  网站代码制作软件有哪些,如何生成自己网站的代码?  ,巨量百应是干嘛的?  网站制作软件免费下载安装,有哪些免费下载的软件网站?  青浦网站制作公司有哪些,苹果官网发货地是哪里?  如何在香港免费服务器上快速搭建网站?  如何通过云梦建站系统实现SEO快速优化?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。