打印动态生成的IFrame内容

时间:2018-07-20 11:52:48

标签: javascript jquery iframe printing

我正在尝试使用以下代码在动态生成的IFrame中打印HTML页面:

var jFrame = $("<iframe name='ifm' src='{0}'>".format(url));

jFrame.css("width", "1px")
    .css("height", "1px")
    .css("position", "absolute")
    .css("left", "-9999px")
    .appendTo($("body:first"));

var objFrame = window.frames['ifm'];
$(objFrame).on('load', function () {
    // Only for testing
    console.log(window.frames['ifm'].document.body);

    objFrame.focus();
    objFrame.print();
});

setTimeout(
    function () {
        jFrame.remove();
    },
    (30 * 1000)
);

但是当我单击以打印它时,它只打印页眉和页脚的空白页。 在执行此行的时刻:console.log(window.frames['ifm'].document.body);,它会正确打印iframe主体的内容,因此我假设iframe的内容已加载,但仍在打印空白页。

0 个答案:

没有答案