在iframe中使bootstrap的模态框在父页面弹出问题


Posted in Javascript onAugust 07, 2017

这几天在写项目的中,页面使用了iframe,然而在子页面中使用bootstrap的模态框时发现:弹出的模态框位置是以子页面为标准居中的,并且遮罩层也只有子页面那一部分,整个页面简直无法直视,所以思考可以可以让模态框以父页面为标准弹出,经过在网上查找资料,总结了一种解决方法。

效果展示

修改前页面

在iframe中使bootstrap的模态框在父页面弹出问题

修改后页面

在iframe中使bootstrap的模态框在父页面弹出问题

实现思路

要想使模态框在顶级页面打开,我想到的方法是使bootstrap的模态框弹在父页面弹出即可。

首先我们将需要弹出的div单独写一个页面,当子页面需要弹出时,在父页面弹出div即可。

将模态框单独写为一个页面

主页面

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title></title>
  </head>
  <body>
    <div class="modal fade" id="ajax" role="basic" aria-hidden="true">
      <div class="modal-dialog">
        <div class="modal-content">
        </div>
      </div>
    </div>
  </body>
  <script>
      $("#ajax").modal({
        remote: "./model.html"
      });
  </script>
</html>

模态框页面

<div class="modal-content">
  <div class="modal-header">
    <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
    <h4 class="modal-title" id="myModalLabel">Modal title</h4>
  </div>
  <div class="modal-body">
    这是模态框
  </div>
  <div class="modal-footer">
    <button type="button" class="btn btn-primary">保存</button>
    <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
  </div>
</div>

这样就可以将模态框的div单独写为一个页面

修改主页面,加入子页面

修改后主页面

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title></title>
  </head>
  <body>
    <table width="100%" height="720px" border="1">
      <tr>
        <td>
          <iframe id="iframe1" name="iframe1" src="iframe1.html" width="100%" height="100%"></iframe>
        </td>
        <td></td>
      </tr>
      <tr>
        <td></td>
        <td>
          <iframe name="iframe2" src="iframe2.html" width="100%" height="100%"></iframe>
        </td>
      </tr>
    </table>
    <input type="text" id="textId" value="234" />
    <div class="modal fade" id="ajax" role="basic" aria-hidden="true">
      <div class="modal-dialog">
        <div class="modal-content">
        </div>
      </div>
    </div>
  </body>
  <script>
    function modalOut(url) {
      $("#ajax").modal({
        remote: url;
      });
    }
  </script>
</html>

这样主页面就有2个子页面,并且将弹出模态框的方法封装至modalOut(url)方法中

子页面弹出模态框

当子页面需要弹出模态框时,加载父页面中的modalOut(url)方法即可:

子页面js如下

var _iframe = window.parent;
_iframe.modalOut('xxx.html');

以上就是解决子页面中弹出模态框无法覆盖全部页面的解决办法,

注意:所以html中未加载js,请自行加载bootstrap相关的js。

总结

以上所述是小编给大家介绍的在iframe中使bootstrap的模态框在父页面弹出问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
使javascript也能包含文件
Oct 26 Javascript
网站如何做到完全不需要jQuery也可以满足简单需求
Jun 27 Javascript
jCallout 轻松实现气泡提示功能
Sep 22 Javascript
jquery.cookie() 方法的使用(读取、写入、删除)
Dec 05 Javascript
javascript得到当前页的来路即前一页地址的方法
Feb 18 Javascript
jQuery中[attribute*=value]选择器用法实例
Dec 31 Javascript
JS获取鼠标相对位置的方法
Sep 20 Javascript
原生js实现旋转木马轮播图效果
Feb 27 Javascript
vue.js项目nginx部署教程
Apr 05 Javascript
详解javascript void(0)
Jul 13 Javascript
解决vue net :ERR_CONNECTION_REFUSED报错问题
Aug 13 Javascript
基于vue+echarts数据可视化大屏展示的实现
Dec 25 Vue.js
JS判断微信扫码的方法
Aug 07 #Javascript
AngularJs每天学习之总体介绍
Aug 07 #Javascript
关于webpack2和模块打包的新手指南(小结)
Aug 07 #Javascript
BootStrap Fileinput插件和Bootstrap table表格插件相结合实现文件上传、预览、提交的导入Excel数据操作步骤
Aug 07 #Javascript
ES6新增数据结构WeakSet的用法详解
Aug 07 #Javascript
bootstrap Table插件使用demo
Aug 07 #Javascript
Django+Vue.js搭建前后端分离项目的示例
Aug 07 #Javascript
You might like
PHP判断文件是否存在、是否可读、目录是否存在的代码
2012/10/03 PHP
php获取、检查类名、函数名、方法名的函数方法
2015/06/25 PHP
带你了解PHP7 性能翻倍的关键
2015/11/19 PHP
yii2.0整合阿里云oss删除单个文件的方法
2017/09/19 PHP
PHP MVC框架中类的自动加载机制实例分析
2019/09/18 PHP
laravel 解决ajax异步提交数据,并还回填充表格的问题
2019/10/15 PHP
js 表单验证方法(实用)
2009/04/28 Javascript
浅谈Sizzle的“编译原理”
2015/04/14 Javascript
javascript从定义到执行 你不知道的那些事
2016/01/04 Javascript
javascript检测flash插件是否被禁用的方法
2016/01/14 Javascript
React如何避免重渲染
2018/04/10 Javascript
从vue源码解析Vue.set()和this.$set()
2018/08/30 Javascript
python实现apahce网站日志分析示例
2014/04/02 Python
Python与Java间Socket通信实例代码
2017/03/06 Python
python实现kNN算法
2017/12/20 Python
pytorch 把MNIST数据集转换成图片和txt的方法
2018/05/20 Python
python中将zip压缩包转为gz.tar的方法
2018/10/18 Python
python变量的存储原理详解
2019/07/10 Python
python matplotlib库绘制条形图练习题
2019/08/10 Python
vue.js刷新当前页面的实例讲解
2020/12/29 Python
俄罗斯家居用品购物网站:Евродом
2020/11/21 全球购物
Collection和Collections的区别
2016/05/02 面试题
财务管理专业毕业生求职信范文
2013/09/21 职场文书
建筑设计专业求职自我评价
2014/03/02 职场文书
买卖协议书范本
2014/04/21 职场文书
投标服务承诺书
2014/05/28 职场文书
实习护士自荐信
2014/06/21 职场文书
档案工作汇报材料
2014/08/21 职场文书
校长创先争优承诺书
2014/08/30 职场文书
正风肃纪剖析材料范文
2014/10/10 职场文书
政风行风评议心得体会
2014/10/21 职场文书
会计求职自荐信范文
2015/03/04 职场文书
复兴之路展览观后感
2015/06/02 职场文书
解决MySQL存储时间出现不一致的问题
2021/04/28 MySQL
opencv检测动态物体的实现
2021/07/21 Python
python使用shell脚本创建kafka连接器
2022/04/29 Python