http://www.runoob.com/bootstrap/bootstrap-v2-modal-plugin.html

描述

Bootstrap Modals(模态框)是使用定制的 Jquery 插件创建的。它可以用来创建模态窗口丰富用户体验,或者为用户添加实用功能。您可以在 Modals(模态框)中使用 Popover(弹出框)和 Tooltip(工具提示插件)。

在本教程中,将通过一些实例和解释来讨论如何使用 Bootstrap 创建模态窗口。同时,我们也会讨论用于定制的各种可用选项。

什么是必需的

您需要 Jquery、Bootstrap CSS 和 JavaScript 文件 bootstrap-modal.js。这个 js 文件位于您下载的 Bootstrap 主文件夹中的 js 文件夹内。

Jquery 位于您的 Bootstrap 主文件夹中的 docs > assets > js 下,名为 jquery.js。或者您可以直接访问 https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js 下载 Jquery。

Bootstrap Modals(模态框)长什么样

下面的实例演示了 Bootstrap Modals(模态框)长什么样。

在您的网站中使用 Bootstrap Modals(模态框)

下面的实例演示了如何在网页中使用 Bootstrap Modals(模态框)。请注意,您不需要编写任何的 JavaScript 代码。实例后面附有相关的解释。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Twitter Bootstrap Modals Example</title>
<meta name="description" content="Creating Modal Window with Twitter Bootstrap">
<link href="/twitter-bootstrap/twitter-bootstrap-v2/docs/assets/css/bootstrap.css" rel="stylesheet">
</head>
<body>
<div class="container">
<h2>Example of creating Modals with Twitter Bootstrap</h2>
<div id="example" class="modal hide fade in" style="display: none; ">
<div class="modal-header">
<a class="close" data-dismiss="modal">×</a>
<h3>This is a Modal Heading</h3>
</div>
<div class="modal-body">
<h4>Text in a modal</h4>
<p>You can add some text here.</p>
</div>
<div class="modal-footer">
<a href="#" class="btn btn-success">Call to action</a>
<a href="#" class="btn" data-dismiss="modal">Close</a>
</div>
</div>
<p><a data-toggle="modal" href="#example" class="btn btn-primary btn-large">Launch demo modal</a></p>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="/twitter-bootstrap/twitter-bootstrap-v2/js/bootstrap-modal.js"></script>
</body>
</html>

在线查看 Bootstrap Modals(模态框)实例。

解释

下面的表格解释了上面的代码。它将帮助您理解如何使用 Bootstrap Modals(模态框)。

代码 解释
div id="example" 分配给相关 div 的 id,id 的值指向后边要实现 modal(模态框)的 JavaScript。
class="modal hide fade in" Bootstrap CSS 的四个 class - modal、hide、fade 和 in,用于设置 modal(模态框)的布局。
style="display: none; 用于保持模态窗口可见,直到触发器触发(比如点击相关按钮)。
<div class="modal-header"> modal-header 适用于定义模态窗口标题样式的 class。
a class="close" CSS class close 用于设置模态窗口关闭按钮的样式。
data-dismiss="modal" data-dismiss 是一个定制的 HTML5 data 属性。用于关闭模态窗口。
class="modal-body" modal-body 是 Bootstrap 的一个 CSS class,用于设置模态窗口主体的样式。
class="modal-footer" modal-footer 是 Bootstrap 的一个 CSS class,用于设置模态窗口尾部的样式。
class="btn btn-success" CSS class btn 和 btn-success 用于在模态窗口的尾部创建一个大号的按钮。您可以使用任何其他 Bootstrap 按钮代替。
class="btn" Bootstrap CSS 的 按钮 class btn,用于在模态窗口的尾部创建一个小号的按钮。
data-dismiss="modal" HTML5 定制的 data 属性 data-dismiss,用于关闭模态窗口。
data-toggle="modal" HTML5 定制的 data 属性 data-toggle,用于打开模态窗口。
class="btn btn-primary btn-large" 设置按钮样式,点击该按钮则创建模态窗口。
<script src="https://ajax.googleapis.com/ajax/libs
/jquery/1.7.1/jquery.min.js"></script>
引用 Jquery 文件。
<script src="../bootstrap/twitter-bootstrap-v2>
/js/bootstrap-modal.js"></script>
引用 bootstrap modal(模态框)的 JS 文件。

使用 JavaScript

您可以使用 JavaScript 来实现 Bootstrap 模态窗口。只需要在您的 JavaScript 中调用 modal() 即可。您的代码如下所示,您可以在 body 结束标签(即 </body>)前引用它。

 $(function ()
{ $("#identifier").modal();
});

其中 identifier 是一个 Jquery 选择器,用于标识相关的容器元素。接下来,我们来看看 options 都有哪些。

选项

下面是一些通过 modal() 定制模态窗口外观和感观时可能使用到的选项。

backdrop

backdrop 选项用于包含一个 modal-backdrop 元素。

如果您把"使用 JavaScript"实例中行号 2 的代码替换为下面的代码,即给 backdrop 选项赋值为 false,此时就不存在任何的 modal-backdrop。

{ $("#example").modal({backdrop:false});

keyboard

如果使用 keyboard 选项,当点击 escape 时则关闭模态窗口。它的类型是 boolean,默认值是 true。如果把 keyboard 选项的值设置为 false,此时即使点击 escape 也不会关闭模态窗口。

如果您把"使用 JavaScript"实例中行号 2 的代码替换为下面的代码,即给 keyboard 选项赋值为 false,此时点击 escape 则不会关闭模态窗口。

{ $("#example").modal({keyboard:false});

show

如果使用 show 选项,当初始化的时候则会显示模态窗口。它的类型是 boolean,默认值是 true。如果把 show 选项的值设置为 false,在初始化时不会显示模态窗口。

如果您把"使用 JavaScript"实例中行号 2 的代码替换为下面的代码,即给 show 选项赋值为 false,在初始化时不会显示模态窗口。

{ $("#example").modal({show:false});

方法

下面是一些通过 modal() 使用到的方法。

.modal(options)

该方法把内容激活为一个 modal(模态框)。您可以引用一个可选的 object 类型的 options 参数。如果您在本教程的第一个实例中的 </body> 标签前添加下面的代码,此时就不存在任何的 modal(模态框) backdrop 元素。

$('#example').modal({
backdrop: false
})

.modal('toggle')

该方法手动切换一个 modal(模态框)。如果您在本教程的第一个实例中的 </body> 标签前添加下面的代码,即可手动切换 modal(模态框)。

$('#example').modal('toggle')

.modal(show)

该方法可用于手动打开一个 modal(模态框)。如果您在本教程的第一个实例中的 </body> 标签前添加下面的代码,即可手动打开 modal(模态框)。

$('#example').modal('show')

.modal(hide)

该方法可用于手动隐藏一个 modal(模态框)。如果您在本教程的第一个实例中的 </body> 标签前添加下面的代码,即可手动隐藏 modal(模态框)。

$('#example').modal('hide')

事件

下面是 Modals(模态框)相关的事件。这些事件用于截获并执行自己的代码。

show

当 show 实例方法被调用之后,此事件被立即触发。

shown

当模态框显示出来之后(同时 CSS 过渡效果也已执行完毕),此事件被触发。

hide

当 hide 实例方法被调用之后,此事件被立即触发。Immediately after the hide instance method has been called, this event is called.

hidden

当模态框向用户隐藏之后(同时 CSS 过渡效果也已执行完毕),此事件被触发。

点击这里,下载本教程中使用到的所有 HTML、CSS、JS 和图片文件。

Bootstrap Modals(模态框)的更多相关文章

  1. Bootstrap 3 模态框播放视频

    Bootstrap 3 模态框播放视频 I'm trying to use the Modal feature from Bootstrap 3 to show my Youtube video. I ...

  2. Bootstrap 实例 - 模态框(Modal)插件

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  3. bootstrap的模态框

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  4. Bootstrap -- 插件: 模态框、滚动监听、标签页

    Bootstrap -- 插件: 模态框.滚动监听.标签页 1. 模态框(Modal): 覆盖在父窗体上的子窗体. 使用模态框: <!DOCTYPE html> <html> ...

  5. Bootstrap中模态框多层嵌套时滚动条问题

    在使用Bootstrap中模态框过程中,如果出现多层嵌套的时候,如打开模态框A,然后在A中打开模态框B,在关闭B之后,如果A的内容比较多,滚动条会消失,而变为Body的滚动条,这是由于模态框自带的遮罩 ...

  6. 黄聪:bootstrap中模态框modal在苹果手机上会失效

    bootstrap中模态框在苹果手机上会失效 可将代码修改为<a  data-toggle="modal" data-target="#wrap" hre ...

  7. layui实现类似于bootstrap的模态框功能

    以前习惯了bootstrap的模态框,突然换了layui,想的用layui实现类似于bootstrap的模态框功能. 用到了layui的layer模块,例如: <!DOCTYPE html> ...

  8. WebUploader 上传插件结合bootstrap的模态框使用时选择上传文件按钮无效问题的解决方法

    由于种种原因(工作忙,要锻炼健身,要看书,要学习其他兴趣爱好,谈恋爱等),博客已经好久没有更新,为这个内心一直感觉很愧疚,今天开始决定继续更新博客,每周至少一篇,最多不限篇幅. 今天说一下,下午在工作 ...

  9. Bootstrap使用模态框modal实现表单提交弹出框

    Bootstrap 模态框(Modal)插件 模态框(Modal)是覆盖在父窗体上的子窗体.通常,目的是显示来自一个单独的源的内容,可以在不离开父窗体的情况下有一些互动.子窗体可提供信息.交互等.如果 ...

  10. bootstrap删除模态框弹出并询问是否删除【通用删除模态框】

    普通的询问是否删除的对话框比较low,可以利用bootstrap的模态框代替普通的对话框来实现删除. 效果: 点删除的时候弹出模态框询问是否删除,点确认的时候将需要删除的ID传到后台进行删除.  过程 ...

随机推荐

  1. Gerrit日常操作命令收集

    Gerrit代码审核工具是个好东西,尤其是在和Gitlab和Jenkins对接后,在代码控制方面有着无与伦比的优势. 在公司线上部署了一套Gerrit系统,在日常运维中,使用了很多gerrit命令,在 ...

  2. 后台跳转到登录页嵌套在iframe的问题(MVC例)

    //首页 public ActionResult Index() { if (!Request.IsAuthenticated) //判断权限,没有登录就跳回登录页 {string url = Url ...

  3. GEOS库的学习之二:简单几何图形的创建

    几何图形(Geometry)是geos里面基本的操作对象,因此Geometry类就是最重要的一个类 几何图形中主要有三个要素:点,线,面.横纵坐标构成点,多个点构成线,环线构成面,点线面混合构成几何集 ...

  4. model的封装+MJExtension 方便后续处理

    //  基本模型 #import <Foundation/Foundation.h> @interface BasicDataModel : NSObject - (id)initWith ...

  5. Opencv step by step - 阈值化

    Opencv里面的阈值化做起来比较简单,只需要一个函数即可: /* Applies fixed-level threshold to grayscale image. This is a basic ...

  6. 20145302张薇 GDB调试汇编堆栈过程分析

    GDB堆栈跟踪与汇编调试 堆栈跟踪 源代码 使用gcc - g example.c -o example -m32指令在64位的机器上产生32位汇编,然后使用gdb example指令进入gdb调试器 ...

  7. Chrome扩展开发之一——Chrome扩展的文件结构

    目录: 0.Chrome扩展开发(Gmail附件管理助手)系列之〇——概述 1.Chrome扩展开发之一——Chrome扩展的文件结构 2.Chrome扩展开发之二——Chrome扩展中脚本的运行机制 ...

  8. Xml命名空间浅析

    XML实例 在介绍xml命名空间之前,我们先来看段xml代码: <?xml version="1.0" encoding="UTF-8"?> < ...

  9. STM32的USB速度,终于确定了传输极限,为以后的产品设计提供了数据。

    是自定协议,用到一个bulk in ep1, 一个bulk out ep2 端点  用虚拟串口的优点显而易见,上位机的编写非常方便,就按照常规的串口功能编写就可以了,而速度确还是usb的速度  USB ...

  10. Android UI基础之五大布局

    Android  UI基础之五大布局 Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦.组件按照布局的要求依次排列,就组成了用户所看见的界面.Andro ...