伪造iframe的src以进行打印,以避免“关于:空白”

伪造iframe的src以进行打印,以避免“关于:空白”,iframe,printing,internet-explorer-6,src,printing-web-page,Iframe,Printing,Internet Explorer 6,Src,Printing Web Page,我正在创建一个隐藏的iframe,专门用于在IE6中打印 以下是代码的基本概要,其中删除了一些HTML填充: $('body').append('<iframe id="printIFrame"></iframe>'); $("iframe#printIFrame").attr('style','position:absolute;width:0px;height:0px;left:-500px;top:-500px;'); $("iframe#printIFrame

我正在创建一个隐藏的iframe,专门用于在IE6中打印

以下是代码的基本概要,其中删除了一些HTML填充:

$('body').append('<iframe id="printIFrame"></iframe>');

$("iframe#printIFrame").attr('style','position:absolute;width:0px;height:0px;left:-500px;top:-500px;');

$("iframe#printIFrame").load(function()
{
    document.getElementById("printIFrame").contentWindow.document.title = "My Title";

    var iframe = document.getElementById("printIFrame");
    iframe.contentWindow.focus();
    iframe.contentWindow.print();

    $("iframe#printIFrame").remove();
});

这是相当好的工作,除了丑陋的关于:空白显示在左下角的每一页打印。我猜,由于我正在制作这个iframe,IE6看到的源代码是:空白。有没有办法伪造src或更改打印的内容?我尝试在打印之前设置src,但是很明显,这会将iframe更改为一个新页面并打印它。有什么想法吗?

如您所述,如果不提前更改src,则无法完成此操作。这是我们正在谈论的IE。它是最不可能支持任何花哨的东西的单一浏览器,如果不支持它,它可以侥幸逃脱


不过,作为记录,我也没有听说过可以在任何其他浏览器中覆盖打印元数据。

我确实找到了一个ActiveX插件,声称可以动态修改打印输出的页眉/页脚

或者,可以通过从IE6的“文件”菜单转到“页面设置”永久更改。不过,如果可能的话,我会尽量避免使用ActiveX插件;我想知道是否有一种简单的方法可以通过javascript更改页眉或页脚。还有其他想法吗