浏览器局部打印实现,iframe打印

const handleOk = () =>{  let ele = document.getElementById(‘printInfor‘);  let iframe=window.frames[‘myPrint‘];  iframe.document.open();  console.log(iframe);  console.log(document.getElementById(‘myPrint‘));  document.getElementById(‘myPrint‘).contentWindow.document.body!=null?document.getElementById(‘myPrint‘).contentWindow.document.body.innerHTML="":""  let mystyle=`   <style>         div,p{              margin: 0;              padding: 0;                    word-break:break-all            }          .ant-table-fixed{          border: 1px solid #333;        }        body{        width:100%;        height: 100%;        }        table{        border-collapse: collapse;/*关键代码*/        table-layout: fixed;        }

td ,th{          border: 1px solid #333;          border-collapse: collapse;/*关键代码*/          text-align: center;          font-size: 14px;        }        </style>  `  iframe.document.write(mystyle);  iframe.document.write(ele.innerHTML);  iframe.document.close();  setTimeout(    function(){      document.getElementById(‘myPrint‘).contentWindow.print()    },100)  dispatch({ type: ‘OmsEntryOrder/updateState‘, payload: {isSaveOk: false}});}

原文地址:https://www.cnblogs.com/ypwei/p/9223694.html

时间: 2024-10-13 18:32:21

浏览器局部打印实现,iframe打印的相关文章

新的浏览器局部打印实现方法

背景 最近在做开发平台,其中涉及到局部打印的功能,将此功能做为开发平台的一个通用功能,从网上搜了一些解决方案和开源js组件,测试的结果都不满意,大多是将打印的内容放在一个iframe内,去打印iframe里面的内容,对性能影响比较大,特别是要打印的内容比较多的情况,而且效果有可能跟实际显示的不一样,干脆还是自己想办法实现吧,后来自己琢磨出了另一种实现方法,和大家一起分享下,谁有更好的解决方案欢迎交流 思路 思路说起来也比较简单,所谓局部打印就是只打印页面中的一部分(如果是打印整个页面就没问题了,

android网页打印,安卓网页打印,h5页面打印,浏览器打印,js打印工具

Android设备打印比较麻烦,一般设备厂商都提供原生app开发的SDK,我们web开发者为难了,不会原生开发啊 给大家提供一个思路,实现web加壳,利用打印浏览器实现 简单来说就是把我们的web页面嵌入浏览器中 web页面的打印功能通过js与浏览器互动 浏览器通过调用硬件SDK实现打印 1.机器安装最新SDK,已安装请忽略 2.下载安装本页下载连接中的打印浏览器并安装 3.对照下方事例代码,修改web页面打印功能 4.打印浏览器中打开web页面,测试打印功能 5.默认主页可以在SD卡根目录修改

web在线打印,打印阅览,打印维护,打印设计

winform打印的方案比较多,实现也比较容易,而且效果也非常炫:但现在越来越多的系统是web系统,甚至是移动端.网上也有非常的web打印方案,但各式各样的问题非常多,比如js兼容性,稳定性等一直缠绕着众多的程序员,或者就是web 打印需要浏览器安装 ActiveX 组件,ActiveX安装不容易成功等等问题. 下面我们来看一种web在线阅览,在线编辑,在线打印的解决方案,Lodop这一款在线打印工具在各版本浏览器的兼容性表现不错,功能方面,我们常用的打印阅览,打印设计,打印机设置等他都提供了,

WEB页面打印--打印指定区域,页面预览,页面设置

转载http://hi.baidu.com/zyb512/blog/item/e9cf70441ce0984a500ffe79.html 1.利用组件把报表的内容生成WORD文档或者是Excel文档,导出以后利用Office自带的打印功能进行打印 2.在网页上利用javascript或者是其他基于javascript和其他语言的组建 下面详细介绍这两种方法 1.生成word或者是Excel文档,当要打印的区域内容为文本的时候适合导出为Word文档来处理,当要打印的内容为表格的时候适合导出为Exc

在打印CAD时打印预览是空白怎么办?

在打印CAD时打印预览是空白怎么办?在日常的工作中,特别是设计师和工程建筑师们,他们每天都在和图纸打交到,肯定遇到过CAD图纸打印是空白,那这个时候我们要怎么办了,具体要怎么操作?下面小编就来教教大家在迅捷CAD编辑器中打印CAD图纸是打印预览是空白怎么办?想要了解的朋友就一起来看看吧! 第一步:首先还是需要在浏览器中搜索迅捷CAD编辑器,然后进入官网点击下载安装最新版本的CAD编辑器,安装完成后,双击打开CAD编辑器进入到软件的操作界面,在点击软件上方菜单栏中的"文件"选项卡,然后在

.Net(c#)打印--多页打印

如果要实现多页打印,就要使用PrintPageEventArgs类的HasMorePages属性. 我们对之前的代码作如下变更:      增加PrintDocument的BeginPrint和EndPrint事件. BeginPrint事件用于得到被打印的内容. EndPrint用于释放资源. PrintDocument的PrintPage事件中实现分页.      基中:BeginPrint的事件方法在PrintPage事件方法前被呼叫.             PintPage的事件方法在

病人的检验条码还没有打印但是在打印界面没有找到

在条码打印界面可以选择未打印与已打印的 所以说只要病人未出院,就能找到她的检验条码,如果找不到,就没法将条码送检验科送检验科,在l_lis_sqd里面把sqdstatus字段状态改为2 上次打印不出来是把4改为的2

Java 打印金字塔 or 打印带数字的金字塔 (Java 学习中的小记录)

Java 打印金字塔 or 打印带数字的金字塔 (Java 学习中的小记录) 作者:王可利(Star·星星) 效果图: 代码如下: 1 class Star8 2 { 3 public static void main(String[] args) 4 { 5 /* 空格 6 * 1 2*i-1 3 4-1 4-i 7 *** 3 2 4-2 8 ***** 5 1 4-3 9 ******* 7 0 4-4 10 */ 11 //第一层循环控制的是行数 12 for(int i = 1;i<=

打印不显示打印按钮及获取其他属性

今天弄了下打印相关的的内容,主要是为了打印页面内容的时候不想同时打印出"打印按钮". 主要有五种方法(其中6为删除打印页眉页脚的例子): 1.打印前将style隐藏,打印后再显示出来.该方法较简单,且可以写成一个共有的方法,推荐. style.display="none"; window.print();//打印 style.display=""; 下面的代码写成了一个传入标签中name属性作为参数的方法,可以讲name均为此名称的部分隐藏打印:

Windows打印体系结构之打印假脱机(Print Spooler)

房子好不好,对我而言始终都是肉体的栖居.对于灵魂,我从来不知道该去向何处. 1.Windows打印体系结构 首先附上查找Windows打印相关内容的链接,这个分类下包含了Windows打印的方方面面: https://msdn.microsoft.com/en-us/library/windows/hardware/ff551767(v=vs.85).aspx 如上图所示,Windows的打印体系结构是由一个打印机假脱机程序(Spooler)和一系列的打印驱动组成.其中带方框的部分都是可以编写安