首页 > 其他分享 >CSDN文章一键打印、输出PDF(自动阅读全文、全清爽模式),去广告模式

CSDN文章一键打印、输出PDF(自动阅读全文、全清爽模式),去广告模式

时间:2023-03-22 10:46:02浏览次数:39  
标签:box body hide 模式 CSDN remove var PDF document

参考连接:https://blog.csdn.net/p1279030826/article/details/106602341

一、功能及使用方法
使用方法:按“F12”进入开发者工具,将以下js复制到 console,回车即可一键打印。

功能:

1、自动“展开阅读全文”
2、删除顶栏、侧栏、相关文章展示、浏览信息、广告、点赞等多余信息。真正的全清爽模式。
3、自动输出打印预览
4、自动缩放打印页面、避免页边缘内容被裁剪。(2020/10/31 新增)
5、自动展开折叠的代码段(2022/8/8 新增)

 

 

 

二、两种方法获取

方法一:移除法

更新内容:增加 自动展开折叠的代码段 功能

注:如果发现打印预览的时候每一页顶部都有标题,请参照下面第三步去掉“页眉和页脚”的勾选

(function(){
    'use strict';
    var articleBox = $("div.article_content");
    articleBox.removeAttr("style");
    $(".hide-preCode-bt").parents(".author-pjw").show();
    $(".hide-preCode-bt").parents("pre").removeClass("set-code-hide");
    $(".hide-preCode-bt").parents(".hide-preCode-box").hide().remove();
    $("#btn-readmore").parent().remove();
    $("#side").remove();
    $(".csdn-side-toolbar, .template-box, .blog-footer-bottom, .left-toolbox, .toolbar-inside").remove();
    $(".comment-box, .recommend-box, .more-toolbox, .article-info-box, .column-group-item").remove();
    $("aside, .tool-box, .recommend-nps-box, .skill-tree-box").remove();
    $("main").css('display','content'); 
    $("main").css('float','left'); 
    $("#mainBox").width("100%");        
    document.getElementsByTagName('body')[0].style.zoom=0.8;
    window.print();
})();

方法二:HTML重新构建法(2020/10/31新增)

该方法与方法一功能一致,代码更加简洁,打印完自动还原网页,并且后续CSDN增加其他多余模块也不会有影响。

(function doPrint(){      
    'use strict';
    var articleBox = $("div.article_content");
    articleBox.removeAttr("style");
    var head_str = "";       
    var foot_str = "";   
    var older = document.body.innerHTML;       
    var title= document.getElementsByClassName('article-title-box')[0].innerHTML; 
    var main_body = document.getElementsByClassName('article_content')[0].innerHTML;
    document.body.innerHTML = head_str + title + main_body + foot_str;
    $("#mainBox").width("100%");
    document.getElementsByTagName('body')[0].style.zoom=0.8;     
    window.print();
    document.body.innerHTML = older;
    return false;
})();

 

标签:box,body,hide,模式,CSDN,remove,var,PDF,document
From: https://www.cnblogs.com/y593216/p/17242766.html

相关文章

  • Html5添加移动触摸的网页版PDF格式文件阅读器插件
    一、使用方法<scripttype="text/javascript"src="jquery.min.js"></script><scripttype="text/javascript"src="pdf.compatibility.js"></script><scripttype="text/......
  • 前端设计模式——模板方法模式
    模板方法模式(TemplateMethodPattern):定义一个行为的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个行为的结构即可重定义该行为的某些特定步骤。这些步......
  • 配置docker容器veth-pair---实现桥接模式
    前言:已知docker网络三种基础模式bridge、host、none,·bridge:桥接模式,创建容器时默认的网络模式;docker安装时,在宿主机内创建一个虚拟网桥docker0,并自动给docker......
  • markdown分页导出pdf
    问题markdown不能分页导出pdf不美观方案在需要分页之处插入以下html代码,在导出pdf时生效<divSTYLE="page-break-after:always;"></div>......
  • go 常用设计模式-结构型模式
    本次分享结构型模式,主要包括:代理模式装饰器模式适配器模式享元模式1.代理模式packageproxyimport"fmt"/*结构型模式代理,代表打理,以他人的名义代表委托人......
  • PC 护眼模式(凑合用)
    产品经理说PC客户端要做护眼模式,理由是竞品做了!win10自带夜间模式,win7通过调整饱和度,色调也可以达到同样的效果,但是多方查找并没有找到系统提供的api。参考其它可以实现......
  • go 常用设计模式-行为型模式
    本次分享的行为型模式,主要包含:责任链模式策略模式观察者模式模板模式访问者模式1.责任链模式packagechainOfResponsibilityimport"fmt"/*行为模式:通过账......
  • .NET Core 3 Preview 2发布,C#8更强大的模式匹配
    英文原文:​​Announcing.NETCore3Preview2​​.NETCore3Preview2发布了,此版本主要带来了C#8相关的新功能,C#8Preview2是.NETCore3SDK的一部分。C#8......
  • Redis哨兵模式实施方案
    部署Redis主从节点在部署Redis主从节点时,可以选择单机部署、容器部署或者集群部署等方式。需要注意的是,主节点和从节点的配置要保持一致,并且在主节点中设置密码,以增加......
  • 策略模式1
    packagecom.cmit.budget.strategy;importorg.apache.commons.lang3.StringUtils;importorg.springframework.stereotype.Component;importjava.util.Map;/**......