• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

用JS打印网页内容,实现隐藏并去掉网页中的页眉页脚页头等信息

武飞扬头像
Luke
帮助6613

前言

正常用浏览器的打印功能打印网页的时候,浏览器会自动给A4纸张加上页眉页脚页头等信息, 必须手动去选项中取消才可以,这篇文章将使用javascript与Jquery的方式,隐藏并且去掉打印网页中的页眉页脚页头,显示正常的打印页面。

关键点,使用 js和css 的方式隐藏打印网页中的页眉页脚页头等信息

一、隐藏页头页脚 使用CSS

使用CSS即可隐藏去掉页眉页脚页头,但是要注意配合插件的使用

@page {
    /* margin: 0mm; */
}
@page {
    size: auto;
    /* auto is the initial value */
    margin: 0mm 10mm 0mm 10mm;
    /* this affects the margin in the printer settings 最关键的还是这个*/
}

二、使用 Jquery 进行网页打印

这是个 jquery 的一个打印插件,点我下载打印插件 如果你的jquery版本太高, 下载一下兼容插件 点我下载兼容插件

//使用jqprint 进行打印
$('.print').click(function () {
    $(".print-content").jqprint({
        debug: false, //如果是true则可以显示iframe查看效果(iframe默认高和宽都很小,可以再源码中调大),默认是false
        importCSS: true, //true表示引进原来的页面的css,默认是true。(如果是true,先会找$("link[media=print]"),若没有会去找$("link")中的css文件)
        printContainer: true, //表示如果原来选择的对象必须被纳入打印(注意:设置为false可能会打破你的CSS规则)。
        operaSupport: true//表示如果插件也必须支持歌opera浏览器,在这种情况下,它提供了建立一个临时的打印选项卡。默认是true
    });
});

三、完整代码示例

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>学新通测试打印</title>
        <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.js"></script>
        <script src="http://www.jq22.com/jquery/jquery-migrate-1.2.1.min.js"></script>
        <script src="https://www.jq22.com/demo/dayin/jquery.jqprint-0.3.js"></script>
    </head>
    <body>
        <div>
            <button class="print">打印按钮</button>
        </div>
        <div class="print-content">
            <style>
                * {
                    margin: 0;
                    padding: 0;
                }
                @page {
                    /* margin: 0mm; */
                }
                @page {
                    size: auto;
                    /* auto is the initial value */
                    margin: 0mm 10mm 0mm 10mm;
                    /* this affects the margin in the printer settings 最关键的还是这个*/
                }
            </style>
        </div>
        <script>
            // 打印
            $('.print').click(function () {
                $(".print-content").jqprint({
                    debug: false, //如果是true则可以显示iframe查看效果(iframe默认高和宽都很小,可以再源码中调大),默认是false
                    importCSS: true, //true表示引进原来的页面的css,默认是true。(如果是true,先会找$("link[media=print]"),若没有会去找$("link")中的css文件)
                    printContainer: true, //表示如果原来选择的对象必须被纳入打印(注意:设置为false可能会打破你的CSS规则)。
                    operaSupport: true//表示如果插件也必须支持歌opera浏览器,在这种情况下,它提供了建立一个临时的打印选项卡。默认是true
                });
            });
        </script>
    </body>
</html>

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/taneekj
系列文章
更多 icon
同类精品
更多 icon
继续加载