当用户选择文件时仅打印iframe的内容->打印
Printing only the contents of an iframe when a user selects file->print
问题:
我有一个应用程序,它将来自其他服务器的内容加载到<iframe>
中。用户希望能够打印iframe中的内容,这有时可能很长,并导致iframe滚动。打印时,只打印iframe视口中显示的区域。其余部分被切断。
我尝试过的:
使用@media print
样式,我可以隐藏页面上的所有其他元素,并将iframe扩展到100%的宽度和高度。我不能做的AFAICT是将其调整为实际内容的w/h(单独使用CSS(,所以如果100%还不够,内容就会被截断。
我知道这是可以通过javascript解决的,但浏览器并不总是为file->print提供事件挂钩,所以我不能在需要的时候运行javascript。
我可以制作一个自定义的"打印"按钮,这样JS就可以运行,iframe也可以正确打印,但它不允许"打印预览",因为浏览器没有提供JS方法。
我被难住了,有答案吗?
如果您想打印iframe的内容,可以使用
document.getElementById('ifr1').contentWindow.print()
这将对iframe的内容(而不是容器窗口(调用print()
。
相关文章:
- 在<页眉>标签
- 使用javascript将动态表从一个html页面打印到另一个html页
- JavaScript打印功能使日历停止工作
- 如何更改<svg>标记为<img>用js标记
- Ckeditor-plugin:插入虚假元素add不情愿<p>标签前后
- esri javascript异步打印
- Ajax文件加载和<输入>文件加载
- 为什么要使用0>javascript中的0
- 文本框不是从Javascript/Asp.net中的对话框中打印出来的
- 检测电话窃听,即:<a href="电话:xxx">在UIWebview上
- 链接所有<a>Meteor
- 在<输入类型=“;文件“/>
- jQuery/JavaScript在线公文包表单-打印样式表
- Div根据<选择>菜单
- 当打印为<pre>在HTML中
- 如何制作一个简单的预打印<pre>使用jquery
- 当用户选择文件时仅打印iframe的内容->打印
- JS:连接html(带+)->如果条件为true,只打印html
- 使用<%#%时使用Javascript打印>
- 更改IE打印中的设置->页面设置