Bootstrap的模态框遮罩在iframe子页面弹出时不能覆盖父页面的解决方法
来源:互联网 发布:微信公众号淘宝客 编辑:程序博客网 时间:2024/05/20 21:20
前段时间在做公司项目的后台管理项目的时候,从网上下载了一个前端模板,是基于bootstrap的。之前也用过bootstrap的模态框,用的是Ace Admin的前端模板。也用了iframe,但并没有遇到子页面的模态框遮罩不能覆盖父页面的问题。这次既然遇到了,就小记一下,也许并不一定有用,但也希望能帮到各位。
我也是借鉴的网上资源自己修改出来的。之前一直把模态框写在了子页面中,几经折腾后还是把模态框和模态框遮罩移到了iframe的父页面中,以后iframe的子页面需要弹出模态框的时候,直接调用这个模态框就可以了。调用模态框的同时,需要将遮罩也显示出来。简要代码如下:
<!DOCTYPE html><html><head><meta charset="UTF-8"><title></title><link rel="stylesheet" href="css/bootstrap.css" /></head><body> <div>.....</div> <!-- 统一调用的模态框 --> <div class="modal fade" role="dialog" id="myModal" aria-hidden="true"></div> <!-- 模态框遮罩 --> <div id='backdropId' class='modal-backdrop fade in' style='display:none;'></div></body></html>
此时,模态框的遮罩是隐藏的。然后就是iframe子页面的按钮点击触发弹出模态框,同时让模态框的遮罩显示出来。以下是简要的js代码,按钮id为:chooseIndex
$(function() {/*----------点击按钮打开模态框------------*/$("#chooseIndex").click(function(){var fatherBody = $(window.top.document.body);//找到父页面的body对象var dialog = parent.$('#myModal');dialog.load("modal/leadDesktopModal.html", function() {dialog.modal({ backdrop: false});});//显示模态框背景遮罩,遮罩位于index.html页面fatherBody.find("#backdropId").show();});});
需要注意的是,模态框的页面需要单独提出来写成一个html页面,然后再在直接调用这个模态框就可以了。然后是关闭模态框的同时也需要将模态框的遮罩一同隐藏掉。这个我也是几经折腾后才选择在模态框页面加入隐藏遮罩的js代码,其他地方的时机都不对,不能有效关闭遮罩。一下是模态框页面中的js代码:
$(function(){$(".closeModal").click(function(){var fatherBody = $(window.top.document.body);fatherBody.find("#backdropId").hide();//隐藏模态框遮罩});});
以上!虽然代码贴的不是很完整,但主要的代码还是贴出来了,需要能对各位有所帮助。
2 1
- Bootstrap的模态框遮罩在iframe子页面弹出时不能覆盖父页面的解决方法
- 让iframe子页面中的bootstrap模态框的背景覆盖到父页面
- 用Bootstrap框架弹出iframe页面 在弹出的模态框中载人iframe页面
- iframe子页面弹出框遮罩层问题的解决方法
- 在iframe中使bootstrap的模态框在父页面弹出
- iframe中弹出框后添加覆盖整个页面的遮罩层并且不覆盖子页面中的弹出框
- JQeury Iframe 在子页面获取父页面的tabs
- 在父页面调用iframe子页面的JS方法
- jsp子页面(iframe)获取父页面(在另一个页面中用iframe)元素的方法
- 在引用iframe后,子页面获取父页面iframe的src
- 当前页面弹出子页面,在子页面关闭时将子页面的值带到父页面中
- js 在iframe子页面获取父页面元素,或在父页面 获取iframe子页面的元素的几种方式
- 子页面的Iframe刷新子页面的Iframe
- 子父页面的iframe方法调用
- 父页面 获取 子iframe的元素
- iframe的子页面调用父页面的方法
- 子页面获取父页面的iframe的信息
- iframe 父页面调用子页面里面的js方法
- list-style-type的属性值
- mysql函数大全及演示
- java-正则表达式判断手机号
- TensorFlow运作方式入门
- 将 ext_net 连接到 router
- Bootstrap的模态框遮罩在iframe子页面弹出时不能覆盖父页面的解决方法
- cmsg(3) - Linux man page
- JavaScript 面向对象(一)
- json与javascript对象和数组的区别
- 设计模式之七:原型模式
- 一些常用的C++11新增特性
- drupal上传利用脚本
- H5新特性WebStorage相关用法详解
- 设置maxsize的自动扩展数据文件在达到maxsize后是否会继续扩展