// ==UserScript== // @name 主流网站文章阅读优化 // @namespace http://tampermonkey.net/ // @version 0.4 // @description 对百度百科/csdn/知乎/简书阅读体验进行优化 // @author 白水 // @match https://baike.baidu.com/item/* // @match https://www.zhihu.com // @match https://www.zhihu.com/* // @match https://zhuanlan.zhihu.com/p/* // @match https://blog.csdn.net // @match https://blog.csdn.net/* // @match https://*.blog.csdn.net/* // @match https://www.jianshu.com/p/* // @grant none // @require https://code.jquery.com/jquery-3.5.1.js // @downloadURL none // ==/UserScript== //--------------常用封装-------------------- //写入JQuery 3.5.1 //(function(url) { document.body.appendChild(document.createElement('script')).src = url; })("https://code.jquery.com/jquery-3.5.1.js"); //var $;//不能写入 //--------------定义-------------- var host = window.location.host, //host href = window.location.href; //href /** get 指定JS querySelector的对象,返回一个对象 * @param {*} querySelector JS 选择器 */ function getByQuerySelector(querySelector) { if (!document.querySelector(querySelector)) return false; return document.querySelector(querySelector); } /** get 指定id属性值的对象,返回一个对象 * @param {*} Id */ function getById(Id) { if (!document.getElementsById(Id)) return false; return document.getElementsById(Id); } /**get 指定TagName的对象 ,返回一个数组 * @param {*} TagName 指定tag的对象 */ function getByTagNameArr(TagName) { if (!document.getElementsByTagName(TagName)) return false; return document.getElementsByTagName(TagName); } /** get 指定Name属性的对象,返回一个数组 * @param {*} Name 指定Name的对象 */ function getByNameArr(Name) { if (!document.getElementsByName(Name)) return false; return document.getElementsByName(Name); } /** get 指定ClassName的对象,返回一个数组 * @param {*} ClassName 类名称 */ function getByClassNameArr(ClassName) { if (!document.getElementsByClassName(ClassName)) return false; return document.getElementsByClassName(ClassName); } /** get 筛选指定ClassName,利用getByClassNameArr数组返回一个数组 * @param {*} ClassName 类名称 */ function getClassUniqueArr(ClassName) { var oElements = getByClassNameArr(ClassName), boxArr = new Array(); for (var i = 0, len = oElements.length; i < len; i++) { if (oElements[i].className == ClassName) { boxArr.push(oElements[i]); } } return boxArr; } Element.prototype.remove = function() { // 像那些属性节点,注释节点,文本节点等等根本不可能做父节点,所以可以说parentNode返回的一般都是父元素节点====一直没有判断这个节点是否存在 if (!this) return false; if (!this.parentNode) return false; this.parentNode.removeChild(this); //父元素节点里删除调用者 }; //--------------Function-------------- //--------------常用封装-------------------- (function() { 'use strict'; //文章优化 function paper() { //CSDN function csdn() { //this指向paper getByClassNameArr("csdn-side-toolbar")[0].remove(); //右边下载二维码 getByQuerySelector("#mainBox > aside").remove(); //左边博主信息 getByQuerySelector("#recommend-list-box").remove(); //右边推广 getByQuerySelector("#mainBox > main > div.first-recommend-box.recommend-box").remove(); //底下第一下载推广 getByQuerySelector("#mainBox > main > div.second-recommend-box.recommend-box").remove(); //底下第二下载推广 getByQuerySelector("#mainBox > main > div.blog-footer-bottom").remove(); //脚注!!!经常删不掉 getByQuerySelector("#passportbox").remove(); //移除登录 } //知乎 function zhihu() { getByQuerySelector("#root > div > div.AdblockBanner").remove(); //首页广告拦截 getByQuerySelector("body > div.__web-inspector-hide-shortcut__").remove(); //移除登录 getByQuerySelector("#root > div > main > div > div > div.GlobalSideBar.GlobalSideBar--old > div > div").remove(); //右边创作 getByQuerySelector("#root > div > main > div > div.Question-main > div > div > div.Card.QuestionInvitation").remove(); //问问题 getByQuerySelector("#root > div > main > div > div > div.GlobalSideBar.GlobalSideBar--old > div > div.Sticky.is-fixed > footer").remove(); //脚注 getByQuerySelector("#root > div > main > div > div.Question-main > div.Question-sideColumn.Question-sideColumn--sticky").remove(); //右边博主信息 } //知乎专栏 function zhihuzhuanlan() { getByQuerySelector("#root > div > main > div > div.ColumnPageHeader-Wrapper").remove(); //广告拦截 } //简书 function jianshu() { getByQuerySelector("#__next > div._3Pnjry").remove(); //左边分享 getByQuerySelector("#__next > div._21bLU4._3kbg6I > div > aside").remove(); //右边推广 getByQuerySelector("body > div:nth-child(13)").remove(); //下载推广 getByQuerySelector("#__next > footer").remove(); //下方评论 } //百度百科 function baidubaike() { mustDelete(); function mustDelete() { getByQuerySelector("body > div.header-wrapper.pc-header-new > div > div").style.height = "0px"; getByQuerySelector("body > div.lemmaWgt-searchHeader > div > div.tool-buttons").remove(); //滚动之后,顶部右上角工具栏 getByQuerySelector("body > div.header-wrapper.pc-header-new > div.topbar.cmn-clearfix").remove(); //顶部百度更多导航内容 getByQuerySelector("#searchForm > a.help").remove(); //顶部帮助 getByQuerySelector("#J-declare-wrap").remove(); //顶部免责声明 getByQuerySelector("body > div.navbar-wrapper").remove(); //头部百科导航都能删除 getByClassNameArr("top-tool ")[0].remove(); //右上角贴边删除class一次性去除试试?ok! getByQuerySelector("#side-share").remove(); //中间右边贴边固定分享 getByQuerySelector("body > div.body-wrapper > div.content-wrapper > div.content").style.width = "850px"; //中间内容 getByQuerySelector("body > div.body-wrapper > div.content-wrapper > div > div.side-content").remove(); //中间侧边内容 getByQuerySelector("#tashuo_bottom").remove(); //脚部他说 getByQuerySelector("body > div.wgt-footer-main").remove(); //脚部备案 var editArr = getByClassNameArr('edit-icon j-edit-link'); //编辑按钮 //遍历删除编辑按钮 for (var i = editArr.length - 1; i >= 0; i--) { editArr[i].remove(); } } if (getByQuerySelector("body > div.body-wrapper.feature.feature_small.custom > div.secondsknow-large-container.J-secondsknow-large-container")) { xuehui(); }; function xuehui() { getByClassNameArr("edit-lemma")[0].remove();//编辑 getByClassNameArr("lemma-discussion")[0].remove();//讨论 getByQuerySelector("body > div.body-wrapper.feature.feature_small.custom > div.secondsknow-large-container.J-secondsknow-large-container").remove(); //推广秒懂,学慧网 getByQuerySelector("#pageTabs").remove(); //中间最上面推广标签 getByQuerySelector("body > div.body-wrapper.feature.feature_small.custom > div.content-wrapper > div > div.main-content > div.main_tab.main_tab-defaultTab.curTab > iframe").remove(); //推广视频,学慧网等等.容易因为这个出bug,删除不掉导致各种问题, } if (getByQuerySelector("body > div.body-wrapper > div.before-content > div.J-wgt-seconds-know-container")) { kepuzhongguo(); }; function kepuzhongguo() { getByQuerySelector("body > div.body-wrapper > div.before-content > div.J-wgt-seconds-know-container").remove(); //秒懂_科普 getByQuerySelector("#hotspotmining_s").remove(); //中间上面推广他说_科普 getByQuerySelector("body > div.body-wrapper > div.content-wrapper > div > div.main-content > span").remove(); //专家贡献 } if (getByQuerySelector("body > div.body-wrapper > div.before-content > div")) { putpong(); }; function putpong() { getByClassNameArr("edit-lemma")[0].remove();//编辑 getByClassNameArr("lemma-discussion")[0].remove();//讨论 getByQuerySelector("body > div.body-wrapper > div.before-content > div").remove(); //秒懂视频_普通词条 }; //getByQuerySelector("body > div.body-wrapper > div.before-content > div:nth-child(1)").remove(); //秒懂视频_科普中国_普通词条 //getByQuerySelector("body > div.body-wrapper > div.before-content > div.J-wgt-seconds-know-container.__web-inspector-hide-shortcut__");//秒懂视频_科普中国 //getByQuerySelector("body > div.body-wrapper.feature.feature_small.custom > div.secondsknow-large-container.J-secondsknow-large-container"); //getByClassNameArr("secondsknow-large-container J-secondsknow-large-container")[0].remove(); //秒懂视频_推广类,学慧网????? //getByQuerySelector("body > div.body-wrapper > div.content-wrapper").style.backgroundColor = "rgba(255, 255, 255, 0.5)" //getByQuerySelector("body").style="background-repeat: repeat-y;background-size: 100%;background-attachment:fixed;background-image: url('https://www.moe123.net/static/img/xingzi_illust/top_page/2020_rm_rf_rx7649.jpg');" /* getByQuerySelector("body > div.header-wrapper.pc-header-new > div.header > div > a").remove(); //右上角推广 getByQuerySelector("body > div.header-wrapper.pc-header-new > div.topbar.cmn-clearfix > div.wiki-common-headTabBar").remove(); //头标签 getByQuerySelector("body > div.body-wrapper.feature.feature_small.custom > div.polysemant-list > div > div > a.polysemant-button.polysemant-button--add.J-polysemant-button--add").remove(); //添加义项 getByQuerySelector("body > div.body-wrapper.feature.feature_small.custom > div.content-wrapper > div > div.side-content").remove(); //他说右边,bug? */ //getByQuerySelector("body > div.body-wrapper > div.content-wrapper > div > div.side-content > div.side-catalog").empty()//导航目录提取 } switch (host) { case "blog.csdn.net": csdn(); break; case "www.zhihu.com": zhihu(); break; case "zhuanlan.zhihu.com": zhihuzhuanlan(); break; case "www.jianshu.com": jianshu(); break; case "baike.baidu.com": baidubaike(); break; default: console.log("不是文章的 host"); } } //延时 //window.onload = function() { setTimeout(paper(), 0); }; //jQuery预载 $(document).ready(paper()); })();