iframe实现局部打印-创新互联
网页中用到jquery.dialog,需要把dialog里面的内容打印出来,开始直接用window.print(),因为我电脑没有连打印机,也没有测试,在项目演示的时候一个同事就打印出来,看效果,太囧了,打印出来的不是div里面的内容,而是当前屏幕所能看到的内容。在网上查了很多资料,有的看不懂,有的尝试了效果却不对,最后自己想了一个办法,用iframe来实现。
网页名称:iframe实现局部打印-创新互联
分享路径:http://pwwzsj.com/article/djcidp.html

第一步:要在页面中加一个iframe,把frameborder、height、width都设置成0,这样页面上就不会看到此iframe了。如:
第二部:在当前页面的js中,获取到这个iframe对象
var frameObj = $(document.getElementById('fra').contentWindow.document.body);
第三部:把要打印的内容放到iframe的body里面
frameObj.html(content);
注:如果要对iframe里面元素操作的话,需要获取到内容:var contentObj = frameObj.contents();再用contentObj操作
第四部:打印
document.getElementById('fra').contentWindow.print();
网页名称:iframe实现局部打印-创新互联
分享路径:http://pwwzsj.com/article/djcidp.html