如何在Opera中使用javascript打印PDF文件?

时间:2011-05-25 19:56:36

标签: javascript pdf printing

我可以使用javascript在Internet Explorer和Firefox中打印PDF文件,如下:

<script type="text/javascript">
<!--
if (navigator.appName == 'Microsoft Internet Explorer')
{
    document.write('<object id="agreementPDF" type="application/pdf" data="file.pdf" width="100%" height="500"></object>');
}
else
{
    document.write('<iframe id="agreementFrame" src="file.pdf" width="100%" height="500px"></iframe>');
}
//-->
</script>

<script type="text/javascript">
<!--
function printAgreement()
{
    if (navigator.appName == 'Microsoft Internet Explorer')
    {
        document.getElementById('agreementPDF').print();
    }
    else
    {
        var agreement = document.getElementById('agreementFrame');
        agreement.focus();
        agreement.contentWindow.print();
    }   
}
//-->
</script>

<input type="button" name="print" onclick="printAgreement();" value="Print" />

但是,在Opera中,打印功能不起作用。

如何让它发挥作用?

感谢。

2 个答案:

答案 0 :(得分:1)

在打印对话框中,看起来Opera需要更多的手握。以下是先前在堆栈溢出

上提出/回答的一些非常类似的问题

window.print not working with opera browser

print() not working on opera browser

Print iframe content in Opera and Chrome

好像你需要使用不同的* .print()函数或在页面加载完成后触发事件。

希望这些链接有所帮助。

答案 1 :(得分:0)

您是否尝试过在窗口的onload事件上打印?

window.onload = function(){
  window.print();
};