浅析BootStrap中Modal(模态框)使用心得
发布时间 - 2026-01-10 22:04:38 点击率:次BootStrap中Modal(模态框)描述

Bootstrap Modals(模态框)是使用定制的 Jquery 插件创建的。它可以用来创建模态窗口丰富用户体验,或者为用户添加实用功能。您可以在 Modals(模态框)中使用 Popover(弹出框)和 Tooltip(工具提示插件)。
一、modal使用:
1.1、登录bootstrap官网,点击下载Bootstrap
1.2、导入对应的样式文件css
1.3、导入对应的js,需要导入bootstrap.js或者bootstrap.min.js文件,bootstrap的前提是jQuery,所以我们要在导入bootstrap.js前面导入jquery.min.js
对应导入代码:
<!--导入样式--> <link href="Bootstrap/css/bootstrap-theme.css" rel="stylesheet"/> <link href="Bootstrap/css/bootstrap-theme.min.css" rel="stylesheet" /> <link href="Bootstrap/css/bootstrap.css" rel="stylesheet"/> <link href="Bootstrap/css/bootstrap.min.css" rel="stylesheet"/> <!--导入bootstrap.js包--> <script src="jquery/jquery-3.1.1.min.js"></script> <script src="Bootstrap/js/bootstrap.min.js"></script>
1.4、从官网找到一个案例使用:
<h2>创建模态框(Modal)</h2>
<!-- 按钮触发模态框 -->
<button class="btn btn-primary btn-lg" data-toggle="modal" data-target="#myModal">开始演示模态框</button>
<!-- 模态框(Modal) -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title" id="myModalLabel">模态框(Modal)标题</h4>
</div>
<div class="modal-body">在这里添加一些文本</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 -->
</div>
二、modal打开:
2.1、静态打开:通过data属性打开隐藏模态框
设置按钮button的data-toggle:"modal"(以模态框的形式打开),data-target:"#myModal"(设置为modal的id)
2.2、动态打开:以jquery代码为例
$("#myModal").modal({
remote:"test/test.jsp";//可以填写一个url,会调用jquery load方法加载数据
backdrop:"static";//指定一个静态背景,当用户点击背景处,modal界面不会消失
keyboard:true;//当按下esc键时,modal框消失
})
remote处可以填写jsp路径或者html路径,用来给modal框注入内容
2.3、动态打开事件:
在modal框加载同时,提供几个方法用来控制modal框
$("#myModal").on("loaded.bs.modal",function{
//在模态框加载的同时做一些动作
});
$("#myModal").on("show.bs.modal",function{
//在show方法后调用
});
$("#myModal").on("shown.bs.modal",function{
//在模态框完全展示出来做一些动作
});
$("#myModal").on("hide.bs.modal",function{
//hide方法后调用
});
$("#myModal").on("hiden.bs.modal",function{
//监听模态框隐藏事件做一些动作
});
2.4、解决remote只加载一次问题:
我们在使用js动态打开modal框使用remote请求数据,只会加载一次数据,所以我们需要在每次打开modal框钱移除节点数据。
解决方案:
$("#myModal").on("hiden.bs.modal",function{
$(this).removeData("bs.modal");
});
2.5、解决事件监听多次:
第一次打开modal框正常,第二次,第三次,第n次打开就有可能会出现事件监听多次的奇怪问题(尤其是多个modal窗口叠加,出现这种问题的几率更高,我大致判断有可能是组件bug),所以无奈之举的办法,只适合应急使用:就是强行让他只调用监听一次
int count = 0 ;
$("#myModal").on("loaded.bs.modal",function{
if(++count == 1){
//调用你需要的方法
}
//在模态框加载的同时做一些动作
});
总结:modal框是个很好用的组件,不过官方文档提醒最好不要多个modal叠加很容易出现很难解决的前端组件问题。
以上所述是小编给大家介绍的浅析BootStrap中Modal(模态框)使用心得,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# bootstrap
# modal
# 模态框
# modal模态框
# 页面遮罩层
# 并且阻止页面body滚动。bootstrap模态框原理
# Bootstrap每天必学之模态框(Modal)插件
# Bootstrap 模态框(Modal)带参数传值实例
# bootstrap模态框消失问题的解决方法
# Bootstrap模态框(modal)垂直居中的实例代码
# 在iframe中使bootstrap的模态框在父页面弹出问题
# bootstrap 模态框(modal)实现水平垂直居中显示
# BootStrap 模态框实现刷新网页并关闭功能
# Bootstrap模态框禁用空白处点击关闭
# Bootstrap实现模态框效果
# 模态
# 加载
# 多个
# 小编
# 官网
# 几个
# 是个
# 在这里
# 尤其是
# 很难
# 有可能
# 就有
# 在此
# 您可以
# 要在
# 很容易
# 只会
# 更高
# 给大家
# 弹出
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
jQuery中的100个技巧汇总
详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)
Laravel的Blade指令怎么自定义_创建你自己的Laravel Blade Directives
Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道
Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用
Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)
Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】
南京网站制作费用,南京远驱官方网站?
lovemo网页版地址 lovemo官网手机登录
Laravel如何使用Seeder填充数据_Laravel模型工厂Factory批量生成测试数据【方法】
如何将凡科建站内容保存为本地文件?
Laravel如何使用Passport实现OAuth2?(完整配置步骤)
如何用PHP快速搭建CMS系统?
Laravel如何处理和验证JSON类型的数据库字段
Laravel怎么自定义错误页面_Laravel修改404和500页面模板
Laravel怎么定时执行任务_Laravel任务调度器Schedule配置与Cron设置【教程】
Midjourney怎样加参数调细节_Midjourney参数调整技巧【指南】
北京网页设计制作网站有哪些,继续教育自动播放怎么设置?
Laravel如何使用模型观察者?(Observer代码示例)
高防服务器租用指南:配置选择与快速部署攻略
Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】
Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程
西安专业网站制作公司有哪些,陕西省建行官方网站?
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
PHP 500报错的快速解决方法
Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能
浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】
,南京靠谱的征婚网站?
laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程
Python文件流缓冲机制_IO性能解析【教程】
Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】
如何在沈阳梯子盘古建站优化SEO排名与功能模块?
三星网站视频制作教程下载,三星w23网页如何全屏?
Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案
利用python获取某年中每个月的第一天和最后一天
bing浏览器学术搜索入口_bing学术文献检索地址
如何快速生成橙子建站落地页链接?
iOS发送验证码倒计时应用
太平洋网站制作公司,网络用语太平洋是什么意思?
Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】
Laravel中的withCount方法怎么高效统计关联模型数量
Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】
Laravel如何发送系统通知_Laravel Notifications实现多渠道消息通知
Laravel Eloquent访问器与修改器是什么_Laravel Accessors & Mutators数据处理技巧
Android自定义listview布局实现上拉加载下拉刷新功能
php 三元运算符实例详细介绍
Laravel模型事件有哪些_Laravel Model Event生命周期详解
如何在建站主机中优化服务器配置?
Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道
JS弹性运动实现方法分析

