Javascript 从iframe打印pdf

Javascript 从iframe打印pdf,javascript,jquery,iframe,Javascript,Jquery,Iframe,我在iframe中动态创建pdf: <iframe name="output" id="output"></iframe> 但在本例中,您可以看到: 它打印一个空白站点。它打印空白页面,因为您正在打印iframe本身。以下是您应该做的: 1。iframe应包含嵌入标记,该标记将加载PDF(由于某些原因,堆栈溢出没有很好地格式化代码,请参阅下面的粘贴站链接): 这是上面的粘贴箱: 页面标题 有趣的 我想我可以添加一个setTimeout,但Chrome给了我未捕获的安全

我在iframe中动态创建pdf:

<iframe name="output" id="output"></iframe>
但在本例中,您可以看到:


它打印一个空白站点。

它打印空白页面,因为您正在打印iframe本身。以下是您应该做的:

1。iframe应包含嵌入标记,该标记将加载PDF(由于某些原因,堆栈溢出没有很好地格式化代码,请参阅下面的粘贴站链接):

这是上面的粘贴箱:


页面标题
有趣的

我想我可以添加一个setTimeout,但Chrome给了我
未捕获的安全性错误:用原点阻止了一个帧”http://fiddle.jshell.net从访问原点为“null”的帧。请求访问的帧具有“http”协议,被访问的帧具有“数据”协议。协议必须匹配。
如果您可以将pdf javascript添加到文件本身以打印自身-var
doc
设置在哪里?url是一个动态数据源,对于url来说,如果你像
My bad那样使用它也没关系,这不是一个跨浏览器的解决方案。它只适用于IE。是的,这就是问题所在!我实际上只需要一个Chrome的解决方案!谢谢你最终会知道另一个答案吗?谢谢这对IE有用吗?这正是我需要的:D
window.frames["output"].focus();
window.frames["output"].print();
< embed src="path_to_script_which_generates.pdf" type="application/pdf" id="pdf"
width="100%" height="100%">
< /embed>
var doPrinting = (id){
    var pdfObject = document.getElementById(id);
    if (typeof(pdfObject.print) === 'undefined') {    
         setTimeout(function(){ doPrinting(id); }, 1000);
    } else {
        pdfObject.print();
    }
 }

 doPrinting('pdf');
<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
</head>
<body>
<strike>funny</strike>.

    <iframe src="file_to_print.pdf" class="frameSet" type="application/pdf" runat="server" name="I5" scrolling="yes" width="100%" height="400">  </iframe>

</body>
</html>