Bootstrap模态框插件使用详解

发布时间 - 2026-01-11 01:04:26    点击率:

本文主要学习Bootstrap 中的模态框插件,这是一款交互式网站非常常见的弹窗功能插件。

1.基本使用

使用模态框的弹窗组件需要三层 div 容器元素,分别为 modal(模态声明层)、dialog(窗口声明层)、content(内容层)。在内容层里面,还有三层,分别为 header(头部)、body(主体)、footer(注脚)。

结合具体演示来理解如下内容:

<!-- 模态框的声明 class="modal show" 显示模态框 fade淡入淡出效果-->
 <div class="modal fade" id="myModal" tabindex="-1"> <!-- id:设置id定位, tabindex: 设置取消 -->
  <!-- 模态框窗口的声明 -->
  <div class="modal-dialog modal-lg"> <!-- modal-lg,sm 设置模态框大小 -->
   <!-- 内容声明 -->
   <div class="modal-content">
    <!-- 模态框头部 -->
    <div class="modal-header">
     <!-- 关闭按钮(在没有show的情况下才能关闭) -->
     <button class="close" data-dismiss="modal"><span>&times;</span></button> 
     <h4 class="modal-title">会员登录</h4>
    </div>
    <!-- 模态框主体 -->
    <div class="modal-body">
     <!-- <p>暂时无法服务</p> -->
     <!-- 在主体部分使用栅格系统中的流体 -->
     <div class="container-fluid">
      <div class="row">
       <div class="col-sm-4">1</div>
       <div class="col-sm-4">2</div>
       <div class="col-sm-4">3</div>
      </div>
     </div>
    </div>
    <!-- 模态框注脚(默认居右)-->
    <div class="modal-footer">
     <button class="btn btn-default">注册</button>
     <button class="btn btn-primary">登录</button>
    </div>
   </div>
  </div>
 </div>

 <!-- 点击触发模态框 data-toggle:表明点击是一个模态框的弹窗类型,
  data-target:定位到指定的模态框节点data-target可以换成href
  -->
  <button class="btn btn-primary" data-toggle="modal" data-target="#myModal">点击弹窗</button>

 <!--使用插件其它方法时的设置-->
 <!-- <button class="btn btn-primary" id="btn" > -->

2.插件的用法

所有的插件,都是基于JavaScript/jQuery 的。

有四个要素:用法、参数、方法和事件。

1. 用法

第一种:可以通过 data 属性

data-toggle="modal" data-target="#myModal"

data-toggle 表示触发类型

data-target 表示触发的节点

如果不是使用<button>,而是<a>,其中 data-target 也可以使用 href=”#myModal”取代。建议使用 data-target。

除了 data-toggle 和 data-target 两个声明属性外,还有一些可以用选项。

2. 参数

可以通过在 HTML 元素上设置 data-*的属性声明来控制效果。

空白背景且点击不关闭 : data-backdrop=”false”

按下 esc 不关闭 : data-keyboard=”false”

初始化隐藏,如果是按钮点击触发,第一次点击则无法显示,第二次显示 : data-show=”false”

加载一次 index.html 到容器内 : href=”index.html”

也可以在 JavaScript 直接设置

//通过 jQuery 方式声明

$('#myModal').modal({
 show : true,
 backdrop : false,
 keyboard : false,
 remote : 'index.html',
});

3. 方法

如果默认不显示弹窗,通过点击前后弹窗的实现

//点击显示弹窗

$('#btn').on('click', function () {
 $('#myModal').modal('show');
});

4. 事件

模态框支持 4 种时间,分别对应弹出前、弹出后、关闭前和关闭后。

$('#myModal').on('show.bs.modal', function () {
 alert('在 show 方法调用时立即触发!');
});

$('#myModal').on('shown.bs.modal', function () {
 alert('在模态框显示完毕后触发!');
});

$('#myModal').on('hide.bs.modal', function () {
 alert('在 hide 方法调用时立即触发!');
});

$('#myModal').on('hiden.bs.modal', function () {
 alert('在模态框显示完毕后触发!');
});

$('#myModal').on('loaded.bs.modal', function () {
 alert('远程数据加载完毕后触发!');
});

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


# bootstrap模态框插件  # bootstrap弹窗插件  # bootstrap模态框  # 页面遮罩层  # 并且阻止页面body滚动。bootstrap模态框原理  # Bootstrap每天必学之模态框(Modal)插件  # Bootstrap模态框(modal)垂直居中的实例代码  # BOOTSTRAP时间控件显示在模态框下面的bug修复  # bootstrap模态框消失问题的解决方法  # 浅析BootStrap模态框的使用(经典)  # Bootstrap模态框调用功能实现方法  # 浅析BootStrap中Modal(模态框)使用心得  # Bootstrap模态框禁用空白处点击关闭  # BootStrap日期控件在模态框中选择时间下拉菜单无效的原因及解决办法(火狐下不能点击)  # 模态  # 可以通过  # 弹出  # 分别为  # 完毕后  # 都是  # 是一个  # 这是  # 加载  # 可以用  # 如果不是  # 可以使用  # 按下  # 还有一些  # 第一种  # 大家多多  # 居右  # 情况下  # 容器内  # span 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何正确选择百度移动适配建站域名?  JavaScript模板引擎Template.js使用详解  香港服务器如何优化才能显著提升网站加载速度?  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  如何快速重置建站主机并恢复默认配置?  Laravel如何实现用户注册和登录?(Auth脚手架指南)  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  如何确保FTP站点访问权限与数据传输安全?  Laravel如何使用Laravel Vite编译前端_Laravel10以上版本前端静态资源管理【教程】  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  深入理解Android中的xmlns:tools属性  Laravel表单请求验证类怎么用_Laravel Form Request分离验证逻辑教程  HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】  如何快速登录WAP自助建站平台?  javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】  如何快速搭建个人网站并优化SEO?  Android okhttputils现在进度显示实例代码  活动邀请函制作网站有哪些,活动邀请函文案?  如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?  Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案  Laravel如何使用Gate和Policy进行授权?(权限控制)  Windows10电脑怎么设置虚拟光驱_Win10右键装载ISO镜像文件  Laravel如何记录自定义日志?(Log频道配置)  用yum安装MySQLdb模块的步骤方法  北京专业网站制作设计师招聘,北京白云观官方网站?  Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门  html5怎么画眼睛_HT5用Canvas或SVG画眼球瞳孔加JS控制动态【绘制】  如何快速生成可下载的建站源码工具?  Internet Explorer官网直接进入 IE浏览器在线体验版网址  Laravel如何使用Sanctum进行API认证?(SPA实战)  Laravel中的withCount方法怎么高效统计关联模型数量  laravel怎么为应用开启和关闭维护模式_laravel应用维护模式开启与关闭方法  Laravel如何使用withoutEvents方法临时禁用模型事件  java中使用zxing批量生成二维码立牌  Laravel怎么上传文件_Laravel图片上传及存储配置  猎豹浏览器开发者工具怎么打开 猎豹浏览器F12调试工具使用【前端必备】  如何在IIS7上新建站点并设置安全权限?  使用C语言编写圣诞表白程序  QQ浏览器网页版登录入口 个人中心在线进入  如何在HTML表单中获取用户输入并结合JavaScript动态控制复利计算循环  Linux网络带宽限制_tc配置实践解析【教程】  Laravel如何使用Spatie Media Library_Laravel图片上传管理与缩略图生成【步骤】  Bootstrap整体框架之CSS12栅格系统  昵图网官网入口 昵图网素材平台官方入口  Laravel如何实现邮箱地址验证功能_Laravel邮件验证流程与配置  标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析  悟空浏览器如何设置小说背景色_悟空浏览器背景色设置【方法】  html文件怎么打开证书错误_https协议的html打开提示不安全【指南】  深圳网站制作平台,深圳市做网站好的公司有哪些?  jQuery validate插件功能与用法详解