全局打印,局部打印的打印案例

资源信息 :

发布:2023-08-30 19:42:00  阅读:557

转载本资源必须注明出处,欢迎加入官群【445790831】

上传用户 :

资源归属:qiang

资源状态 :

资源状态:免费下载

资源好评 :

资源下载 :

qiang的头像

资源作者:【qiang】

个性签名:请输入个性签名___________

全局打印:


直接右键打印,可能会有一些不需要打印的元素,我们要想办法隐藏这类元素

  1. css隐藏,css的打印 媒体查询,可以在打印的时候,隐藏不需要的元素。
@媒体查询 print {
    /*这里设置要隐藏的元素*/
    .打印隐藏 {
        显示模式: 无效;
    }
}
  1. 脚本隐藏,有监听打印的方法,在方法里面设置某些元素隐藏,打印结束后显示。
$(浏览器窗口).绑定事件("@事件_打印对话框出现前", 定义函数 () {
    // 在打印之前的操作
    调试输出("准备打印");
    // 隐藏不需要打印的元素
    $(".打印隐藏").隐藏元素();
});

$(浏览器窗口).绑定事件("@事件_打印对话框出现后", 定义函数 () {
    // 在打印之后的操作
    调试输出("打印完成");
    // 恢复隐藏的元素
    $(".打印隐藏").显示标签();
});

局部打印

我做了一个局部打印的案例,首先需要把网页分成两部分;

<区块 id="打印区域" 行内样式="显示模式: 无效"></区块>
<区块 id="非打印区域"></区块>

打印部分是不要写代码的,而非打印部分则包裹整个网页代码。

我们使用局部打印,首先需要局部打印的元素,加上开始注释与结束注释,如下:

<!--画板打印区域开始-->
<画板 id="签名画板" 宽度="500" 高度="300"> </画板>
<!--画板打印区域结束-->

然后调用方法:

// 无修改的
$("#打印搜索区域").点击元素(定义函数 () {
    区域打印("<!--搜索打印区域开始-->", "<!--搜索打印区域结束-->");
});
// 有修改的
$("#打印画板区域,#打印画板").点击元素(定义函数 () {
    局部变量 画板数据 = 画板操作类.获取画板数据($("#签名画板")[0]);
    区域打印("<!--画板打印区域开始-->", "<!--画板打印区域结束-->", 定义函数 () {
        // 一系列的操作,为了完美打印,可以先去掉下面的打印,调试打印内容
        浏览器窗口.打印();
    });
});

区域打印的方法在案例里面,直接调用是不行的,如果是静态的html元素,可以不用设置定义函数,具体参考案例。

$("#打印搜索区域").点击元素(定义函数 () {
    区域打印("<!--搜索打印区域开始-->", "<!--搜索打印区域结束-->");
});

最后,如果是动态的元素,需要在打印结束之后,回复原本的操作

$(浏览器窗口).绑定事件("@事件_打印对话框出现后", 定义函数 () {
    // 恢复网页
    $("#打印区域").隐藏元素().设置或返回元素("");
    $("#打印区域").元素宽度("auto");
    $("#非打印区域").显示标签();
    // 恢复动态元素
});

里面写了一个画板打印,里面有个绑定事件,为了图片加载完成,然后再进行打印,不然无法成功。

最后讲一下,打印背景问题,有的时候打印可能会去除背景,有些元素就没有颜色,需要在打印机设置打开背景颜色;

默认排序
Generic placeholder image
Generic placeholder image
快码FOF编程 Time: 2023-08-30 19:30:17

打印案例

Generic placeholder image
1363****0303 Time: 2023-08-30 19:38:37

去体验一下

Generic placeholder image
孟庆伟 回复 1楼 快码FOF编程 Time: 2023-08-31 14:13:48

老师,打印快递面单咋打印呢,10个包裹对应10个面单,1-10一直到10-10,这个网页怎么打印处理

Generic placeholder image
快码FOF编程 回复 3楼 孟庆伟 Time: 2023-08-31 15:09:06

具体建议发帖,详细描述需求

Generic placeholder image
学无止境 Time: 2023-10-28 10:53:26

去体验一下



全局打印,局部打印的打印案例