这是一个jquery插件,先发一下实操代码:
这个插件的运行逻辑,基本就是,当用户点击打印按钮时,程序会调用浏览器默认的打印功能。
打印什么内容呢?
就是打印iframe所加载的那个页面。
因此,如果当前页面,有多个ifreme,就能实现批量打印多个页面。
在我的项目里,我会在当前页渲染的时候,做一个ajax请求,从后台拿到多组数据,然后在页面中插入多个iframe。
打印按钮只需要一个。
点击打印按钮,就能一次性打印所有iframe嵌入的网页了。
链接:https://pan.baidu.com/s/1q6VNqlzd9bbdR_4sKhU25g 提取码:67ho
然后,在实际使用中,还遇到一个问题,就是无法打印背景色和背景图,这时候只需要在被打印的页面的style中,加入如下代码即可:
@media print {
body{
-webkit-print-color-adjust:exact;
}
}