IE 11 和 FF 38 从 iFrame 发出超过 1 页的打印

Posted

技术标签:

【中文标题】IE 11 和 FF 38 从 iFrame 发出超过 1 页的打印【英文标题】:IE 11 and FF 38 issue printing from iFrame over 1 page in length 【发布时间】:2015-08-20 23:33:09 【问题描述】:

我在打印包含多个iFrames 的页面时遇到问题,当iFrame 的内容比打印的页面长时,它无法正常显示。

这是我所看到的超级简化版本。打开此链接,点击打印预览:http://ringdev.com/code/inner.html 您应该会看到 7 页的 lorem ipsum 填充。

接下来在 IE 10、11 或 FF 38 中打开此链接并点击打印预览: http://ringdev.com/code/outer.html 您可以看到只打印了第一页。您可以看到 iFrame 跑出页面底部,但它不会继续到第 2 页或以后。

有趣的是,Chrome 对此没有任何问题,并且打印效果非常好。不幸的是,该组织只支持 IE 和 Firefox。

任何人以前遇到过这个问题,或者对如何解决它有任何想法?

【问题讨论】:

在 IE11 和 FF38 中测试,找不到任何问题:/ 奇怪,刚刚收到你回复的通知。在 Microsoft Edge 中再次测试,仍然无法正确打印。我没有在这台机器上安装 FF,但我会在星期一再试一次。 是的,当打印到 PDF 文件时,我可以在 IE11 最新版本 Windows 8.1 中重现它。仅打印 1 页。我实际上有两页,第二页是空白的。最近一直在处理 iframe 和 IE11,这就是我偶然发现您的帖子的原因。 我记得在 IE 中尝试使用 iframe 打印网页时遇到了许多问题。如果你找到了一个成功的方法,一定要去做,但我会在你领先的时候退出,并尝试在一个窗口中加载和打印 iframe 内容。 @ThatRickGuy:您的问题伙伴中的链接断开 【参考方案1】:

我会寻找可能是您的问题的 Windows 更新。 CVE-2017-8529 的安全更新将中断 iFrame 页面的打印。 KB4022725 就是这样一种更新。

您不仅要查看是否安装了更新,还要检查注册表中是否有以下注册表项:

`SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_ENABLE_PRINT_INFO_DISCLOSURE_FIX\iexplore.exe

SOFTWARE\WOW6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_ENABLE_PRINT_INFO_DISCLOSURE_FIX\iexplore.exe`

确保它们被禁用。

您可以在此处找到来自 Microsoft 的有关此更新和 iFrame 相互关联的问题的信息:

support.microsoft.com

【讨论】:

以上是关于IE 11 和 FF 38 从 iFrame 发出超过 1 页的打印的主要内容,如果未能解决你的问题,请参考以下文章

“iframe.contentDocument”在 IE8 和 FF(3.5 及更低版本)中不起作用还有其他解决此问题的步骤吗?

IE11 未发起 CORS 请求

IE / iframe 中的 Javascript 错误

Telerik RadDatePicker 隐藏在 IE11 中的 iframe 后面

无法从 IE 11 中的父页面打印 iframe 内容

从 IFRAME IE11 调用父 JavaScript