【问题标题】:how to print iframe google docs viewer open document如何打印 iframe 谷歌文档查看器打开文档
【发布时间】:2014-01-24 18:56:27
【问题描述】:

我正在使用谷歌文档查看器来显示我上传的文档并且我想打印它,但我无法使用 jQuery 打印这些文档。

我想打印 iframe 文档,但不是我的代码。怎么打印那个文件??

<button id="printbtn" onclick="myFunction()">Print</button>

<iframe src="http://docs.google.com/viewer?url=<?php echo urlencode(UPLOAD_URL.$file_name); ?>&embedded=true" frameborder="0" scrolling="no" id="iframe" style="border: none;" width="800" height="470"></iframe>

<script>
function myFunction(){
    window.frames["iframe"].focus();
    window.frames["iframe"].print();    // NOT WORKING
}
</script>

请帮帮我……

【问题讨论】:

  • 我不确定,但这是同样的问题:Duplicate?
  • 在这个问题中显示其他网站的 html 在我的问题中我有打开的 word 或 pdf 文件。
  • 你是用wordpress还是别的?

标签: javascript php jquery html iframe


【解决方案1】:

我做了一些挖掘,发现它不可能, 因为 docs.google 将与您的域不同。 我试过了,

document.querySelector('iframe').contentWindow.print()

并得到“阻止一个带有来源“http://mydomain”的框架访问跨域框架。


可以说,即使谷歌允许跨域,打印功能也不起作用。因为 google docs viewer 会打开另一个打印窗口。

我得出的结论是,谷歌开发人员巧妙地使这成为不可能。

【讨论】:

  • 我不知道触发打印命令就这么简单。令人印象深刻。
  • 由于跨域策略,如果您从另一个域打印 iframe 元素,它将不起作用。
猜你喜欢
  • 2022-01-05
  • 2021-01-11
  • 2013-04-24
  • 1970-01-01
  • 2017-10-05
  • 2017-11-06
  • 1970-01-01
  • 2013-08-29
相关资源
最近更新 更多