Jquery打印预览未显示整页

时间:2014-02-06 08:45:14

标签: javascript jquery css jquery-plugins printing

我正在使用此工具对我的页面进行打印预览。

Demo Plugin

我的页面中有一张桌子。因此,当我在pageload之后绘制预览时,它没有在Firefox中显示整页

Firefox

但是在Chrome中,同一页面工作正常,显示完整预览。

<link rel="stylesheet" href="{{ asset('bundles/joy/css/print.css') }}" type="text/css" />

<link rel="stylesheet" href="{{ asset('bundles/joy/print/css/print-preview.css') }}" type="text/css" />

<link rel="stylesheet" href="{{ asset('bundles/joy/css/print.css') }}" type="text/css" media="print"/>

这个print.css是由我制作的。它不是来自插件示例。

$('body').printPreview();
$.printPreview.loadPrintPreview();

我错过了什么吗?如何在firefox和chrome中看到完整的预览?

1 个答案:

答案 0 :(得分:0)

问题出在 iFrame高度。如果我根据我的总页面高度调整iFrame高度,它可以正常工作。

演示示例还包含Firefox中的问题(截至10-02-14(下载的演示代码))。页脚或版权声明在打印预览示例中减半。

所以这就是我所做的。在jquery.print-preview,js文件中,我替换了

的所有实例
print_frame.height($('body', print_frame.contents())[0].scrollHeight);

heights=Math.max($(document).height(), $(window).height())+30;
print_frame.height(parseInt(heights));

这会将iframe高度设置为实际文档高度。