IE9 中的白屏问题 - 删除 iframe

2024-01-25

我想知道是否有人可以让我深入了解我一直在努力解决的一个非常奇怪的 IE9 问题。

我正在完成一个工作网站的制作 - 它在 ff/chrome/ie7/ie8 中运行良好,没有脚本错误。

在 IE9 上,应用程序的最后一步会导致整个选项卡变成白屏,并且没有脚本错误或警告。 (将文档模式更改为ie8可以解决问题,但显然不适合生产)

不幸的是,该网站非常复杂,有大量的 ajax 和页内脚本,因此我无法轻松发布相关代码。我更想弄清楚如何诊断这个问题。

我检查了 IE 错误日志,它们是空的。 Web 开发人员工具没有告诉我任何信息。该网站不使用任何插件(Flash/Silverlight 等),仅使用 javascript w/jQuery。

在失败的步骤周围,iframe 中显示了一个 PDF - 但在上一步中(使用相同的方法)显示了几乎相同的 pdf,没有问题。该代码在调用 jquery UI 窗口时失败,但我似乎无法获得确切的行。

如果有人知道如何进一步诊断这一点,我将非常感激。我可以继续寻找错误,但我以前从未见过这种行为,只是不确定我在寻找什么。


感谢您对此的所有意见。抱歉,我一次被几个项目完全淹没了,所以我无法发布调试步骤的更新。

这花了很长时间,但当我关闭包含第一个 PDF 的对话框时,我终于意识到一切都崩溃了。

我的辅助功能之一是打开对话框并在关闭时自动销毁内容。通常这工作得很好,因为我要么删除包含页面片段的 div,要么删除 iframe。

在这种情况下,我将一个页面片段加载到对话框中,其中包含一些按钮和 pdf iframe。我在包含 iframe 的父元素上调用了 .remove() 方法,而不是在 iframe 本身上调用。由于某种原因,这似乎在所有其他浏览器中都工作得很好 - 但在 IE9 中,它几乎终止了页面渲染,没有任何警告或消息。

我强烈怀疑罪魁祸首是 adobe 插件,但我不完全确定。

这是修复方法-
Html:

<div id="container">
 <iframe src="loremipsum.pdf"></iframe>
</div>

JavaScript:

//Ruins my entire week
$("#container").remove(); 

//Works as the pdf is removed directly
$("#container").find("iframe").remove().end().remove(); 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IE9 中的白屏问题 - 删除 iframe 的相关文章

随机推荐