首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >父文件和iframe中的Bootstrap.js文件

父文件和iframe中的Bootstrap.js文件
EN

Stack Overflow用户
提问于 2012-08-28 14:07:06
回答 2查看 1.3K关注 0票数 1

我正在使用twitter的bootstrap创建一个web应用程序。该应用程序包含一个页面,该页面在iframe中加载相同域的另一个页面。现在我的问题是,如果我在iframe中加载的页面也包含bootstrap.js文件,它就会开始与应用程序发生冲突。例如,我的应用程序有一个使用数据属性构建的折叠(折叠) http://twitter.github.com/bootstrap/javascript.html#collapse。一旦加载了包含bootstrap.js的页面,折叠事件就开始触发twice.So,如下所示

代码语言:javascript
复制
<head>//Bootstrap css and js files included</head>
<body>
   <div>
     //Collapsible Menu #1
   </div>
   <iframe>
       <head>
           //BootStrap.js script from same location as parent
       </head>
       <body>
           // Another Collapsible Menu #2
       </body>
    `  </head> 
   </iframe>
</body>

在这里,当我尝试点击菜单#1时,Bootstrap.js的代码被触发了两次,结果是显示菜单,然后隐藏菜单。但我的问题并不仅限于菜单。我需要能够在我的应用程序中使用bootstrap.js,也允许已经包含bootstrap.js的页面在iframe中加载。

有没有办法绕过这个问题,还是我做错了什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-05-07 12:49:38

找到问题了..这对于我的应用来说是非常具体的。它的工作方式是-在“目标”网页中有一个包含的JS文件来触发应用程序。JS文件不会从页面中删除所有内容,并构建一个iframe来将“目标”的内容加载到iframe中。现在在本例中,我在app.js文件之前运行了BootstrapJS,这反过来导致在“父”框架中执行,然后当应用程序加载时,它会重新加载,从而导致冲突(或由于多个包含而导致的多个事件)。

票数 1
EN

Stack Overflow用户

发布于 2012-12-14 18:42:26

我只在IE9中遇到了同样的问题。

我正在IFRAME对话框中打开我的网站的一个实例。这意味着有两个Bootstrap实例,如上所述。

当我用鼠标移出IFRAME时,它调整了底层布局的大小,以匹配IFRAME中较小的布局的宽度。

为了解决这个问题,我不得不使用javascript禁用打开页面的bootstrap-responsive.js样式表。然后,您可以在关闭IFRAME对话框时将其重新打开。

代码语言:javascript
复制
if(navigator.userAgent.indexOf("Trident/5")>-1){
    window.parent.document.getElementById("responsiveCSS").sheet.disabled = true;
}

可怕的黑客攻击,我知道。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12153598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档