gpt4 book ai didi

internet-explorer - IE 上的 iframe.print 与 window.print - 以前的小字体

转载 作者:行者123 更新时间:2023-12-04 11:43:13 24 4
gpt4 key购买 nike

在我们的 Web 应用程序中,我们有几个页面的打印功能,我们采用的方法是将当前页面的内容放在全局可用的 iframe 文档中并打印 iframe(使用 Javascript)。这在 Firefox 中工作得很好,但在 IE 中它以非常小的字体打印 iframe,几乎不可读。

在两个浏览器中应用的所有 CSS 都是相同的,我确保正在打印的 HTML 不会以任何方式溢出(使 IE 适合内容或其他内容)......而且 IE 打印仍然非常小。有趣的是,如果我将打印逻辑更改为写入新窗口,然后执行 window.print(),则在 IE 中一切正常,并且字体与 CSS 要求/指定的一样大。

有没有人在 IE 中遇到过与 iframe.print() 类似的问题?

谢谢您的帮助。

尼丁

最佳答案

在解决了同样的问题后,我发现了这个线程。看起来这种行为即使在 IE11 中仍然存在。好消息是我能够找到解决方案,而无需打开新窗口然后调用 window.print()。 .

诀窍是使用 document.execCommand在 IE 中(一直到 IE11),然后优雅地退回到 iframe.print()在其他浏览器中。完整的解决方案可能看起来像这样(使用 jQuery 选择 iframe,但这完全是可选的):

var target = $('iframe')[0];
try {
target.contentWindow.document.execCommand('print', false, null);
} catch(e) {
target.contentWindow.print();
}

这个解决方案的灵感来自这里关于 IE7 的一个非常古老的线程: http://bytes.com/topic/misc/answers/629926-ie7-printing-iframe-solution .不过,它仍然是相关的。

关于internet-explorer - IE 上的 iframe.print 与 window.print - 以前的小字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8055889/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com