- // ==UserScript==
- // @name 自动展开全文阅读更多
- // @version 1.154.1
- // @author baster
- // @description 自动展开网站全文内容而无需点击,去掉一些烦人广告,去掉需要打开app的提示,站外链直达(支持鼠标左右键和拖拽打开),避免网址重定向浪费时间,支持免登陆复制文字,兼容手机和电脑端。 -- 【目前已支持上百个网站】
- // @supportURL https://greasyfork.org/zh-CN/users/306433
- // @homepageURL https://greasyfork.org/zh-CN/users/306433
- // @namespace https://greasyfork.org/zh-CN/users/306433
- // @icon https://img.icons8.com/stickers/100/000000/double-down.png
- // @match *://theqoo.net/*
- // @match *://m.36kr.com/*
- // @match *://ext.baidu.com/api/comment/*
- // @match *://www.xz577.com/*
- // @match *://*.huanqiu.com/*
- // @match *://iknow.lenovo.com.cn/*
- // @match *://g.pconline.com.cn/*
- // @match *://www.it1352.com/*
- // @match *://www.jianshu.com/p/*
- // @match *://*.csdn.net/*
- // @match *://jingyan.baidu.com/article/*
- // @match *://baijiahao.baidu.com/s*
- // @match *://haokan.baidu.com/v*
- // @match *://zhidao.baidu.com/question/*
- // @match *://m.21jingji.com/article/*
- // @match *://www.bjtzdbzz.com/*
- // @match *://chejiahao.m.autohome.com.cn/info/*
- // @match *://www.bandbbs.cn/threads/*
- // @match *://*.elecfans.com/*
- // @match *://yiidian.com/*
- // @match *://*.yiidian.com/*
- // @match *://m.jb51.cc/*
- // @match *://www.jb51.cc/*
- // @match *://baike.baidu.com/item/*
- // @match *://wap.peopleapp.com/article/*
- // @match *://blog.51cto.com/*
- // @match *://xuedingmiao.com/*
- // @match *://xw.qq.com/*
- // @match *://mbd.baidu.com/newspage/*
- // @match *://ailegal.baidu.com/*
- // @match *://www.cnbeta.com/articles/*
- // @match *://www.zhihu.com/question/*
- // @match *://zhuanlan.zhihu.com/p/*
- // @match *://*.imooc.com/*
- // @match *://*.py.cn/code/*
- // @match *://*.sina.com.cn/*
- // @match *://juejin.cn/post/*
- // @match *://www.oschina.net/*
- // @match *://iswbm.com/*
- // @match *://m.so.com/s?q=*
- // @match *://wap.sogou.com/web/*
- // @match *://*.douban.com/*
- // @match *://www.wxnmh.com/*
- // @match *://www.chinaz.com/*
- // @match *://gitee.com/*
- // @match *://www.tianyancha.com/*
- // @match *://www.shaduizi.com/*
- // @match *://show.bookmarkearth.com/view/*
- // @match *://www.423down.com/*
- // @match *://www.itdaan.com/*
- // @match *://www.iteye.com/blog/*
- // @match *://www.360doc.com/*
- // @match *://www.360doc.cn/*
- // @match *://developer.aliyun.com/*
- // @match *://cloud.tencent.com/*
- // @match *://mail.qq.com/*
- // @match *://tieba.baidu.com/*
- // @match *://www.tieba.com/*
- // @match *://*.ifeng.com/*
- // @match *://*.ximalaya.com/*
- // @match *://www.sanzhima.com/*
- // @match *://m.meishichina.com/*
- // @match *://www.logonews.cn/*
- // @match *://segmentfault.com/*
- // @match *://ld246.com/*
- // @match *://*.bilibili.com/*
- // @match *://*.toutiao.com/*
- // @match *://www.itbaoku.cn/*
- // @match *://support.qq.com/*
- // @match *://m.downxia.com/*
- // @match *://*.sohu.com/*
- // @match *://m.weibo.cn/u/*
- // @match *://card.weibo.com/*
- // @match *://www.yunqishi.net/*
- // @match *://stackoom.com/*
- // @match *://www.codeprj.com/*
- // @match *://m.yezicc.com/*
- // @match *://*.ali213.net/*
- // @match *://itpcb.com/*
- // @match *://*.vovososo.com/*
- // @match *://www.lishixinzhi.com/*
- // @match *://www.anquanke.com/*
- // @match *://m.hexun.com/*
- // @match *://www.javascriptcn.com/*
- // @match *://*.zol.com.cn/*
- // @match *://www.5axxw.com/*
- // @match *://3g.163.com/*
- // @match *://*.js-code.com/*
- // @match *://*.wenda.so.com/*
- // @match *://wenda.so.com/*
- // @match *://*.dxy.cn/*
- // @match *://*heidong.com/*
- // @match *://www.tofacebook.com/*
- // @match *://www.ngui.cc/*
- // @match *://ddrv.cn/*
- // @match *://www.qcc.com/*
- // @match *://*.cnr.cn/*
- // @match *://*tinymind.net.cn/*
- // @match *://view.inews.qq.com/*
- // @match *://*gamersky.com/*
- // @match *://*.bugscaner.com/*
- // @match *://*.dgrt.cn/*
- // @match *://devnote.pro/*
- // @match *://betheme.net/*
- // @match *://*.rstk.cn/*
- // @match *://*.taodudu.cc/*
- // @match *://weibo.com/ttarticle/p/show*
- // @match *://weibo.com/cmbchina*
- // @match *://weibo.com/u/*
- // @match *://www.ctfiot.com/*
- // @match *://www.takefoto.cn/*
- // @match *://www.autohotkey.com/*
- // @match *://www.95pm.com/*
- // @match *://*.betheme.net/*
- // @match *://*.zoukankan.com/*
- // @match *://*.hexun.com/*
- // @match *://*.xjx100.cn/*
- // @match *://*.yii666.com/*
- // @match *://*.pianshen.com/*
- // @match *://*.knowbaike.com/*
- // @match *://pythonjishu.com/*
- // @match *://m.freebuf.com/*
- // @match *://www.nuomiphp.com/*
- // @match *://dhexx.cn/*
- // @match *://*.exyb.cn/*
- // @match *://ispacesoft.com/*
- // @match *://www.3424.cn/*
- // @match *://*.cnq.net/*
- // @match *://txc.qq.com/*
- // @match *://m.bjnews.com.cn/*
- // @match *://www.cn-healthcare.com/*
- // @match *://www.wevul.com/*
- // @match *://*.yuque.com/*
- // @match *://*.66law.cn/*
- // @match *://*.ssap.com.cn/*
- // @match *://*.chinaacc.com/*
- // @match *://lvlin.baidu.com/*
- // @match *://*.64365.com/*
- // @match *://programmercarl.com/*
- // @match *://*.qdxiaochuan.com/*
- // @match *://*.zjh336.cn/*
- // @match *://*.volcengine.com/*
- // @match *://*.289.com/*
- // @match *://*.hi-linux.com/*
- // @match *://*.chusan.com/*
- // @match *://*.nowcoder.com/*
- // @match *://*.techgrow.cn/*
- // @match *://*.gaodun.com/*
- // @match *://easylearn.baidu.com/*
- // @match *://*.youlai.cn/*
- // @match *://*.cndzys.com/*
- // @match *://*.jiangzi.com/*
- // @match *://*.dazhong.com/*
- // @match *://discussions*.apple.com/*
- // @match *://www.msn.cn/*
- // @match *://*.pcbaby.com.cn/*
- // @match *://*.youzan.com/*
- // @match *://*.93300.cn/*
- // @match *://sspai.com/*
- // @match *://*.xjishu.com/*
- // @match *://*.eastday.com/*
- // @match *://*.tuidc.com/*
- // @match *://*.saoniuhuo.com/*
- // @match *://*.pingguolv.com/*
- // @match *://*.ppmy.cn/*
- // @match *://*.ultimate-communications.com/*
- // @match *://*.zmtpc.com/*
- // @match *://m.eeo.com.cn/*
- // @match *://*.sina.cn/*
- // @grant GM_addStyle
- // @grant GM_openInTab
- // @grant unsafeWindow
- // @run-at document-start
- // ==/UserScript==
-
- (function () {
- var websites = [
- {
- match: ["*://*.sina.cn/*"],
- hide: [".read-unfold-box", "#article_end + div", "#m-sentiment3"],
- expand: [".main-article-body"],
- },
- {
- match: ["*://m.eeo.com.cn/*"],
- wait: [
- [".a-load",
- node => {
- node.click();
- return false;
- },
- ],
- [".more",
- node => {
- node.click();
- return false;
- }
- ],
- ]
- },
- {
- match: ["*://*.ultimate-communications.com/*"],
- hide: [".readall_box"],
- expand: [".content-content"],
- },
- {
- match: ["*://*.pingguolv.com/*"],
- hide: [".click_more"],
- expand: ["mip-showmore"],
- },
- {
- match: ["*://*.zmtpc.com/*"],
- hide: [".readall"],
- expand: [".article .newstext"],
- },
- {
- match: ["*://*.saoniuhuo.com/*"],
- hide: [".mrc-btn-wrap"],
- expand: [".mrc-content"],
- },
- {
- match: ["*://*.tuidc.com/*"],
- hide: [".bottom_all_text_btn", ".bottom_all_text"],
- expand: [".ty_text_box"],
- },
- {
- match: ["*://*.eastday.com/*"],
- hide: [".expand-btn"],
- expand: [".post-content"],
- },
- {
- match: ["*://*.xjishu.com/*"],
- hide: [".gradBox", ".art-download"],
- expand: [".con-box"],
- },
- {
- match: ["*://sspai.com/*"],
- hide: ["#btn-call-app"],
- },
- {
- match: ["*://easylearn.baidu.com/edu-page/tiangong/*"],
- hide: [".bgk-detail .main-bottom", ".bgk-detail .banner", ".vip-banner-cont", ".vip-card-warp", ".business-el-line", ".question-cont .tigan .mask .toogle-btn"],
- expand: [".question-cont .tigan"],
- wait: [
- [".more-text",
- node => {
- node.click();
- return false;
- },
- ],
- [".dan-btn",
- node => {
- node.click();
- return false;
- },],
- [".exercise-btn-4",
- node => {
- node.click();
- return false;
- },],
- [".expand-btn",
- node => {
- node.click();
- return false;
- },],
- ]
- },
- {
- match: ["*://www.msn.cn/*"],
- hide: [".article-cont-read-button-container"],
- expand: [".article-body"],
- start: () => {
- Element.prototype._attachShadow = Element.prototype.attachShadow;
- Element.prototype.attachShadow = function () {
- let css = `
- .article-body
- {
- height: auto !important;
- max-height: unset !important;
- overflow: unset !important;
- -webkit-line-clamp: unset !important;
- }
- `;
- let style = document.createElement("style");
- style.type = "text/css";
- try {
- style.innerHTML = css;
- } catch (x) {
- style.innerText = css;
- }
- let shadow = this._attachShadow({ mode: "open" });
- shadow.appendChild(style);
- return shadow;
- };
- },
- },
- {
- match: ["*://*.93300.cn/*"],
- hide: [".entry-readmore"],
- expand: [".entry-content"],
- },
- {
- match: ["*://*.youzan.com/*"],
- hide: [".cms-article-lock"],
- expand: [".content-content"],
- },
- {
- match: ["*://ailegal.baidu.com/*"],
- hide: [".article-content .expand", ".article-content .mask"],
- expand: [".article-content .article-text"],
- },
- {
- match: ["*://*.pcbaby.com.cn/*"],
- hide: [".mip-showmore-btn"],
- expand: ["mip-showmore"],
- },
- {
- match: ["*://discussions*.apple.com/*"],
- hide: [".post-content-toggle .post-content-toggle-button"],
- expand: [".post-content-toggle", ".post-body.collapsed"],
- },
- {
- match: ["*://*.dazhong.com/*"],
- hide: ["#read-more", ".content-more"],
- expand: ["#wrap", "#cont"],
- },
- {
- match: ["*://*.jiangzi.com/*"],
- hide: [".show_more_btn"],
- expand: ["#readtxt-video", ".detailText"],
- },
- {
- match: ["*://*.cndzys.com/*"],
- hide: [".content-more"],
- expand: ["#cont"],
- },
- {
- match: ["*://*.youlai.cn/*"],
- hide: [".mip-showore-btn-bar"],
- expand: ["#show-more"],
- },
- {
- match: ["*://*.gaodun.com/*"],
- hide: [".view-more"],
- expand: [".m-context"],
- },
- {
- match: ["*://*.techgrow.cn/*"],
- hide: ["#readmore-wrapper"],
- expand: ["#readmore-container"],
- },
- {
- // https://m.nowcoder.com/discuss/607623789546844160
- // https://greasyfork.org/zh-CN/scripts/440400-%E8%87%AA%E5%8A%A8%E5%B1%95%E5%BC%80%E5%85%A8%E6%96%87%E9%98%85%E8%AF%BB%E6%9B%B4%E5%A4%9A/discussions/239120
- match: ["*://*.nowcoder.com/*"],
- hide: [".view-more-btn", ".article-btns-open", "#cyh_banner"],
- expand: ["div[id^='data']", ".xle.pop_.cn_"],
- js: () => {
- $(".continue-btn").click();
- let el = document.querySelector(".ncmain.appwithsplit");
- if (el) {
- el.__vue__.$options.parent.isShowAll = true;
- }
-
- nodes = document.querySelectorAll(".wonder-item");
- nodes.forEach(item => {
- item.__vue__.maxOneLineFontNum = 1000;
- item.__vue__.commentDisable = false;
- });
- $(".wonder-list").parent().parent()[0].__vue__.isShowAllList = true;
-
- nodes = querySelectorIncludesText('span.text-content', 'APP内查看完整回复');
- nodes.forEach(item => {
- item.remove();
- });
- },
- start: () => {
- var post = {};
- Object.defineProperty(unsafeWindow, "post", {
- get: function () {
- return post;
- },
- set: function (value) {
- post = value;
- post.isTestCmtGoApp = false;
- post.isTestHotTalkGoApp = false;
- },
- enumerable: true,
- configurable: false,
- });
- },
- },
- {
- match: ["*://*.chusan.com/*"],
- hide: [".view-more-btn", ".article-btns-open", "#cyh_banner"],
- expand: ["div[id^='data']", ".xle.pop_.cn_"],
- },
- {
- match: ["*://*.hi-linux.com/*"],
- hide: ["#read-more-wrap"],
- expand: ["#vip-container"],
- },
- {
- match: ["*://*.289.com/*"],
- hide: [".f-show-cont"],
- expand: [".m-downmain"],
- },
- {
- match: ["*://*.volcengine.com/*"],
- hide: ["div[class*='button-AVOE'][class*='volcfe-flex-middle']", "div[class^='cover-']"],
- expand: ["div[class^='content-'][class*='hidden-']"],
- hookEvent: ["copy"],
- },
- {
- match: ["*://*.zjh336.cn/*"],
- hide: [".readnum"],
- expand: [".viewall_plugin"],
- },
- {
- match: ["*://*.qdxiaochuan.com/*"],
- hide: [".teles, .telesmore"],
- expand: [".postcon"],
- },
- {
- match: ["*://programmercarl.com/*"],
- hide: ["#read-more-wrap"],
- expand: [".theme-default-content"],
- },
- {
- match: ["*://*.64365.com/*"],
- hide: [".zs-unfold .unfd-btn-bar"],
- expand: [".unfd-ovh"],
- },
- {
- match: ["*://lvlin.baidu.com/*"],
- hide: [".check-more.check-fold"],
- expand: [".main-content-box"],
- },
- {
- match: ["*://*.chinaacc.com/*"],
- hide: [".news-con-mod .news-more-panel"],
- expand: [".news-con-mod"],
- },
- {
- match: ["*://*.ssap.com.cn/*"],
- hide: [".yueduqi_over"],
- expand: [".yueduqi_content"],
- },
- {
- match: ["*://*.yuque.com/*"],
- hide: ["div[class^=index-module_bottomAdvertiseWrapper]"],
- },
- {
- match: ["*://www.wevul.com/*"],
- directLink: [
- "*/go/*",
- (node) => {
- const regex = /\/go\/([^\/]+)$/;
- const base64Str = node.href.match(regex)[1];
- const decodedStr = atob(base64Str);
- node.href = decodedStr;
- node.setAttribute("target", "_blank");
-
- },
- ],
- },
- {
- match: ["*://*.66law.cn/*"],
- hide: [".det-unfold .unfd-flex-bar .unfd-btn"],
- expand: [".unfold-bar .unfd-ovh"],
- },
- {
- match: ["*://www.cn-healthcare.com/*"],
- hide: [".mask, .ni_mask", "footer"],
- expand: ["#artbody"],
- },
- {
- match: "*://txc.qq.com/*",
- directLink: ["*/link-jump?jump=*", "jump"],
- },
- {
- match: ["*://m.bjnews.com.cn/*"],
- hide: [".article > .shade"],
- expand: [".article"],
- },
- {
- match: ["*://*.cnq.net/*"],
- hide: ["#readmore-wrapper"],
- expand: ["#readmore-container"],
- },
- {
- match: ["*://www.3424.cn/*"],
- hide: [".div-mask>.div-showbtn"],
- expand: [".contents article"],
- },
- {
- match: ["*://ispacesoft.com/*"],
- hide: [".entry-readmore"],
- expand: [".entry-content"],
- },
- {
- // https://theqoo.net/hot/2963319501
- match: ["*://theqoo.net/*"],
- js: () => {
- var nowScroll = $(window).scrollTop();
- $(document).ajaxComplete(function (event, xhr, settings) {
- if (settings && settings.data && (settings.data.includes('act=dispBoardContentCommentListTheqoo') || settings.data.includes('act=dispTheqooContentCommentListTheqoo'))) {
- $(window).scrollTop(nowScroll);
- if ($(".show_more:not([style='display: none;'])").length > 0) {
- $(".show_more:not([style='display: none;'])").click();
- }
- }
- });
- }
- },
- {
- match: ["*://m.freebuf.com/*"],
- js: () => {
- if (window.innerWidth > 1024) {
- location.href = location.href.replace('m.freebuf.com', 'www.freebuf.com');
- }
- }
- },
- {
- match: ["*://www.nuomiphp.com/*"],
- hide: [".question-richtext .read-more"],
- expand: [".question-richtext"],
- },
- {
- match: ["*://pythonjishu.com/*"],
- hide: [".entry-readmore"],
- expand: [".entry-content"],
- },
- {
- match: ["*://*.knowbaike.com/*"],
- hide: ["#read-more"],
- expand: [".art-txt"],
- js: () => {
- document.oncontextmenu = function () { return true; };
- document.onkeydown = function () { return true; };
- }
- },
- {
- // 抄袭站直接跳转到原文即可
- match: ["*://*.pianshen.com/*"],
- js: () => {
- $('head').append('<meta name="referrer" content="never">');
- let url = $('#gotosource a').attr('href');
- if (url) {
- location.href = url;
- }
- }
- },
- {
- // 抄袭站直接跳转到原文即可
- match: ["*://*.yii666.com/*"],
- hide: ["#vipReadAll", ".sidebar"],
- expand: [".article-content-height"],
- js: () => {
- $('head').append('<meta name="referrer" content="never">');
- let url = $('.OpenToUrl').attr('data-href');
- if (url) {
- location.href = url;
- }
- }
- },
- {
- match: ["*://*.xjx100.cn/*", "*://dhexx.cn/*", "*://*.ppmy.cn/*"],
- js: () => {
- $('head').append('<meta name="referrer" content="never">');
- var originalTextMethod = $.fn.text;
- $.fn.text = function (value) {
- if (arguments.length === 0) {
- return originalTextMethod.call(this);
- } else {
- let re = originalTextMethod.call(this, value);
- let text = $('.source_url').text();
- if (text && (text.includes("http://") || text.includes("https://"))) {
- let regex = /(https?:\/\/[^\s]+)/;
- location.href = text.match(regex)[0];
- }
- return re;
- }
- };
- let text = $('.source_url').text();
- if (text && (text.includes("http://") || text.includes("https://"))) {
- let regex = /(https?:\/\/[^\s]+)/;
- location.href = text.match(regex)[0];
- } else {
- var test = false;
- var scriptTags = $("script");
- scriptTags.each(function () {
- var src = $(this).attr("src");
- if (src && src.includes("?source_url=")) {
- let { source_url } = parseUrl(src);
- if (source_url) {
- test = true;
- location.href = source_url;
- }
- }
- });
- if (!test) {
- let url = $('#vip').find('a').attr('href');
- if (url) {
- location.href = $('#vip').find('a').attr('href');
- }
- }
- }
-
- }
-
- },
- {
- match: ["*://*.zoukankan.com/*"],
- js: () => {
- $('head').append('<meta name="referrer" content="never">');
- let nodeList = querySelectorIncludesText('a[href^="http"]', '查看全文');
- if (nodeList.length > 0) {
- location.href = nodeList[0].href;
- }
- }
- },
- {
- match: ["*://*.hexun.com/*"],
- hide: ["div.showAll", "div.bottomLayer"],
- expand: ["div.art_contextBox"],
- },
- {
- match: ["*://*.betheme.net/*"],
- hide: ["#vip"],
- expand: [".articleHeight"],
- },
- {
- match: ["*://www.95pm.com/*"],
- hide: [".readall_box"],
- expand: [".readall-body"],
- },
- {
- match: ["*://www.takefoto.cn/*"],
- hide: [".content .article .article-text .load"],
- expand: [".article-text"]
- },
- {
- expand: [".content .article .article-text"],
- match: ["*://www.autohotkey.com/*"],
- js: () => {
- const items = document.querySelectorAll('.codebox > p > a:first-child + :nth-child(2)');
- items.forEach(item => {
- expandCode(item);
- });
- },
- },
- {
- match: ["*://www.ctfiot.com/*"],
- directLink: [
- "*/go/?url=*",
- (node) => {
- let { url } = parseUrl(node.href);
- if (url) {
- node.href = atob(url);
- node.setAttribute("target", "_blank");
- }
- },
- ],
- },
- {
- // https://weibo.com/cmbchina
- match: ["*://weibo.com/cmbchina*", "*://weibo.com/u/*"],
- wait: [
- [
- "span.expand",
- node => {
- node.click();
- return false;
- }
- ]
- ]
- },
- {
- // https://weibo.com/ttarticle/p/show?id=2309404890441668493647
- match: ["*://weibo.com/ttarticle/p/show*"],
- hide: [".artical_add_box"],
- expand: [".WB_editor_iframe_new"],
- },
- {
- match: ["*://*.rstk.cn/*", "*://*.taodudu.cc/*", "*://*.dgrt.cn/*", "*://*.exyb.cn/*"],
- hide: ["div#vip"],
- expand: [".article_content"],
- },
- {
- match: ["*://betheme.net/*"],
- hide: ["div#vip"],
- expand: [".articleHeight"],
- },
- {
- match: ["*://devnote.pro/*"],
- hide: [".readmore-box"],
- expand: [".post-mask"],
- },
- {
- match: ["*://*.bugscaner.com/*"],
- hide: ["#div_qrcode_container", "#top-header"],
- },
- {
- match: ["*://*tinymind.net.cn/*"],
- start: () => {
- // 或者废掉DOMMouseScroll
- unsafeWindow.verify_flag = 1;
- unsafeWindow.phone_verify_flag = 1;
- Object.defineProperty(unsafeWindow, "verify_flag", {
- get: function () {
- return 1;
- },
- enumerable: true,
- configurable: false,
- });
- Object.defineProperty(unsafeWindow, "phone_verify_flag", {
- get: function () {
- return 1;
- },
- enumerable: true,
- configurable: false,
- });
- },
- },
- {
- // https://view.inews.qq.com/k/20210608A045BD00
- match: ["*://view.inews.qq.com/*"],
- hide: ["div[class^=show-more_outer]", "div[class^=slider-top-bar_sliderWrapper]"],
- expand: ["div[class^=show-more_height-not-full]"],
- },
- {
- // https://wap.gamersky.com/news/Content-1571244.html
- match: ["*://*gamersky.com/*"],
- hide: [".gsAreaContextOpen", ".ymwBootDownload"],
- expand: ["#gsAreaContext"],
- },
- {
- match: ["*://www.qcc.com/*"],
- directLink: ["*://www.qcc.com/web/transfer-link?link=*", "link"],
- },
- {
- match: ["*://*.cnr.cn/*"],
- hide: ["#readmore"],
- expand: ["#perny-main"],
- },
- {
- match: ["*://www.ngui.cc/*"],
- hide: ["#vip"],
- expand: ["#contentWraper", ".article_content"],
- },
- {
- match: ["*://ddrv.cn/*"],
- hide: ["#read-more-wrap"],
- expand: ["#container"],
- },
- {
- match: ["*://*.dxy.cn/*"],
- hide: ["div[class^=contentWrapBottom_]"],
- expand: ["div[class^=contentWrap_]"],
- },
- {
- match: ["*://www.tofacebook.com/*"],
- hide: [".topic .more-box"],
- expand: [".topic"],
- },
- {
- // https://wenda.so.com/q/1679797307210735
- match: ["*://*wenda.so.com/*"],
- hide: ["#show-rest-entry", ".answer-part__has-folder__btn", ".unfold-page.js-unfold-page", "#js-unfold-more"],
- expand: ["#det-content", ".answer-part__has-folder", "#js-ans-box-first"],
- wait: [[".hide.js-unfold-answer.answer-fold-box", (node) => node.classList.remove("hide")]],
- },
- {
- match: ["*://*.js-code.com/*"],
- hide: ["#read-more-wrap"],
- expand: ["#codeContent", "#container"],
- },
- {
- match: ["*://*heidong.com/*"],
- hide: [".ggbox"],
- start: () => {
- // 阻止牛皮癣弹框
- unsafeWindow.user_login = true;
- Object.defineProperty(unsafeWindow, "user_login", {
- get: function () {
- return true;
- },
- enumerable: true,
- configurable: true,
- });
- },
- },
- {
- // https://wap.zol.com.cn/ask/x_19257207.html
- match: ["*://*.zol.com.cn/*"],
- hide: [".unfold-article-btn", ".wap__bottom-app-button"],
- expand: [".article-content"],
- wait: [
- ["div.show-all-reply", "click"]
- ]
- },
- {
- match: ["*://3g.163.com/*"],
- hide: [".backflow-floating.js-open-app"],
- },
- {
- // 某些采集机翻引流站点
- match: ["*://www.5axxw.com/*"],
- hide: ["#gzh-mask", "#gzh-modal"],
- },
- {
- match: ["*://m.hexun.com/*"],
- hide: [".article-open"],
- expand: [".article"],
- },
- {
- // var key = 'read' + (new Date).toJSON().substring(0, 7); localStorage
- match: ["*://www.javascriptcn.com/*"],
- hide: [".readall_box"],
- expand: [".markdown-body"],
- },
- {
- match: ["*://www.anquanke.com/*"],
- directLink: ["*://*/outLinkPage/?target=*", "target"],
- },
- {
- match: ["*://*.vovososo.com/*"],
- directLink: [
- "*/jump.html?url=*",
- (node) => {
- let { url } = parseUrl(node.href);
- if (url) {
- node.href = atob(url);
- node.setAttribute("target", "_blank");
- }
- },
- ],
- },
- {
- match: ["*://itpcb.com/*"],
- hide: ["#read-more-wrap"],
- expand: ["#container"],
- },
- {
- match: ["*://www.lishixinzhi.com/*"],
- hide: ["#showbtn"],
- expand: ["#endtext"],
- },
- {
- match: ["*://*.ali213.net/*"],
- hide: [".unfold-field.unfold-field-download", ".read-all-con", ".download-text"],
- expand: [".detail_content", "#Content"],
- },
- {
- match: ["*://m.yezicc.com/*"],
- hide: [".fulltext-button"],
- expand: ["#article-body > .wrap"],
- },
- {
- match: ["*://stackoom.com/*", "*://www.codeprj.com/*"],
- js: () => {
- if (!$.cookie("openid") || !$.cookie("loginCode")) {
- $.cookie("openid", "1", { expires: 7 });
- $.cookie("loginCode", "1", { expires: 7 });
- }
- },
- },
- {
- match: ["*://www.yunqishi.net/*"],
- hide: [".ckgd"],
- expand: [".tw_contain"],
- },
- {
- match: ["*://card.weibo.com/*", "*://weibo.com/ttarticle/*"],
- hide: [".f-art-opt"],
- expand: [".f-art"],
- },
- {
- match: ["*://m.weibo.cn/u/*"],
- directLink: ["*://weibo.cn/sinaurl?u=*", "u"],
- },
- {
- // https://m.sohu.com/a/442909096_120459022/?pvid=000115_3w_a
- match: "*://*.sohu.com/*",
- hide: [".lookall-box", "#CallAppContainer"],
- css: `
- .hidden-content.hide,.control-hide {
- display: block !important;
- }
- `,
- js: () => {
- $('#artLookAll').click();
- }
- },
- {
- match: "*://m.downxia.com/*",
- hide: ["a.slide-btn"],
- expand: [".chapter-cont"],
- css: `
- .chapter-cont.snbg {
- position: unset !important;
- }
- `,
- },
- {
- match: ["*://support.qq.com/*"],
- directLink: ["*://support.qq.com/*/link-jump?jump=*", "jump"],
- },
- {
- match: ["*://www.itbaoku.cn/*"],
- hide: [".qa-content-more"],
- expand: ["#qa-content"],
- },
- {
- // https://wukong.toutiao.com/question/6712757183118835972/
- match: ["*://*.toutiao.com/*"],
- hide: ["a.j-expand-showfull.expand-bottom", ".m-share-answer .neck .mask", ".float-openapp", ".expand-container .expand-button-wrapper"],
- expand: ["div.answer-text-full", "article.content", ".expand-container.folded"],
- },
- {
- match: ["*://www.bilibili.com/*"],
- hide: [".h5-download-bar", ".read-article-box .read-more .arrow-cnt", ".video-desc-container .toggle-btn"],
- expand: [".read-article-box.limit", ".video-desc-container .basic-desc-info"],
- js: () => {
- // 去掉复制的时候总是带上的尾巴
- let node = document.getElementById("article-content");
- if (node != null) {
- node.oncopy = function (e) {
- e.clipboardData.setData("text/plain", window.getSelection().toString());
- e.preventDefault();
- e.stopPropagation();
- e.stopImmediatePropagation();
- };
- }
- },
- },
- {
- match: ["*://m.bilibili.com/video/*"],
- hide: [".launch-app-btn.m-nav-openapp"],
- wait: [
- ["div.to-see", "click"]
- ]
- },
- {
- match: ["*://m.bilibili.com/*"],
- hide: [".opus-read-more"],
- expand: [".opus-module-content.limit"],
- },
- {
- match: ["*://ld246.com/*"],
- directLink: ["*://*ld246.com/forward?goto=*", "goto"],
- },
- {
- match: ["*://segmentfault.com/*"],
- directLink: [
- "*://link.segmentfault.com/?enc=*",
- (node) => {
- // segmentfault这东西也去加密了?
- if (/^https?:\/\//.test(node.innerText) && !node.innerText.endsWith("...")) {
- node.href = node.innerText;
- }
- },
- ],
- },
- // 暂时不用这功能
- // {
- // // https://cn.bing.com/search?form=MOZSBR&pc=MOZI&q=GIT_CLEAN_FLAGS
- // match: ["*://cn.bing.com/search?*"],
- // bindClick: [
- // "a[href^=http]",
- // (node, e) => {
- // if (node.target == "_blank" && !node.hostname.includes("bing.com")) {
- // e.stopPropagation();
- // }
- // },
- // ],
- // },
- {
- match: ["*://www.logonews.cn/*"],
- directLink: ["*://link.logonews.cn/?url=*", "url"],
- },
- {
- // https://m.meishichina.com/recipe/69477/
- match: ["*://m.meishichina.com/*"],
- hide: [".showmore_page_a"],
- expand: ["#showmorearticle"],
- },
- {
- match: ["*://www.sanzhima.com/*"],
- directLink: [
- "*://www.sanzhima.com/jump.html?url=*",
- (node) => {
- let { url } = parseUrl(node.href);
- if (url) {
- node.href = atob(url);
- node.setAttribute("target", "_blank");
- }
- },
- ],
- },
- {
- // https://www.ximalaya.com/sound/357093858
- match: ["*://www.ximalaya.com/*", "*://m.ximalaya.com/*"],
- hide: [".more-intro-wrapper.cY_", ".stretch-box .mask.ib_", "a.init-code.schema-link"],
- expand: [".draft._Fc, .sound-intro .intro._Fc", ".stretch-box.ib_", ".album-intro .intro.Q_v"],
- },
- {
- // https://auto.ifeng.com/c/8EK6RQbD5U2
- // https://i.ifeng.com/c/8EJoQhvSkT3
- // https://ihouse.ifeng.com/news/2022_03_12-55263044_0.shtml
- match: "*://*.ifeng.com/*",
- hide: ["section[class^='bottomSlide-']", "header[class^='headerIn-']", "div[class^='callupBtn-']", "div[class^='more-']", "div[class^='tip-']", "div.showall", "div[class^='more-1-']", "div[class^='bottom_box-'] > div[class^='box-']", "div[class^='containerBox-'] > div[class^='shadow-']", "[class^='index_shadow'] > [class^='index_unfoldIcon']"],
- expand: ["div[class^='main_content-']", "section.article", "div[class^='containerBox-']", "div[class^='index_containerBox']"],
- css: "#root>div[class^='main-'] {margin-bottom: unset !important;}",
- },
- {
- // https://tieba.baidu.com/p/7412962296
- // https://www.tieba.com/p/7745474371
- match: ["*://tieba.baidu.com/*", "*://www.tieba.com/*"],
- hide: [".appPromote", ".appBottomPromote", ".frs_daoliu_for_app", ".pb_cut_hot_recommend", ".father-cut-daoliu-normal-box", ".father-cut-daoliu-from-toutiao-box"],
- directLink: [
- "*://jump*.bdimg.com/safecheck/index?url=*",
- (node) => {
- if (/^https?:\/\//.test(node.innerText)) {
- node.href = node.innerText;
- }
- },
- ],
- },
- {
- match: "*://mail.qq.com/*",
- bindClick: [
- "a[href^=http]",
- (node, e) => {
- if (node.target == "_blank" && !node.href.includes("mail.qq.com")) {
- e.stopPropagation();
- }
- },
- ],
- },
- {
- // https://cloud.tencent.com/developer/article/1953552
- match: "*://cloud.tencent.com/*",
- hide: [".cdc-expand-area__toggle", ".com-markdown-collpase-hide .com-markdown-collpase-toggle", ".J-headerAdvertising", ".c-nav-advertising"],
- expand: [".cdc-expand-area__main", ".com-markdown-collpase-hide .com-markdown-collpase-main"],
- },
- {
- // https://developer.aliyun.com/article/875173
- match: "*://developer.aliyun.com/*",
- hide: ["#btn-readmore", ".article-hide-box"],
- expand: [".article-hide-content"],
- },
- {
- // http://www.360doc.com/content/20/0805/05/71057272_928578782.shtml
- match: ["*://www.360doc.com/*", "*://www.360doc.cn/*"],
- hide: [".article_showall"],
- expand: ["#articlecontent", ".article_maxh"],
- bindClick: [
- "a[href^=http]",
- (node, e) => {
- if (node.target == "_blank" && !node.hostname.includes("360doc.com")) {
- e.stopPropagation();
- }
- },
- ],
- },
- {
- // https://www.iteye.com/blog/agile-boy-274366
- match: "*://www.iteye.com/blog/*",
- hide: [".hide-article-box"],
- expand: ["#blog_content"],
- },
- {
- match: "*://www.423down.com/*",
- directLink: [
- "*://www.423down.com/go.php?url=*",
- (node) => {
- let { url } = parseUrl(node.href);
- if (url) {
- node.href = atob(url);
- }
- },
- ],
- },
- {
- // https://www.itdaan.com/blog/2019/08/06/1b407ea67c33df1c625ab657443ccd45.html
- match: "*://www.itdaan.com/*",
- js: () => {
- if (!$.cookie("openid") || !$.cookie("loginCode")) {
- $.cookie("openid", "1", { expires: 7 });
- $.cookie("loginCode", "1", { expires: 7 });
- }
- if ($.cookie("vipuser") != "1") {
- $.cookie("vipuser", "1", { expires: 7 });
- }
- },
- directLink: [
- "*://www.itdaan.com/link/*",
- (node) => {
- let url = node.href.split("/link/", 2)[1];
- if (url) {
- node.href = atob(url);
- }
- },
- ],
- },
- {
- match: "*://show.bookmarkearth.com/view/*",
- js: () => {
- let node = document.querySelector("p.link");
- if (node) {
- location.replace(node.innerText);
- }
- },
- },
- {
- match: "*://www.shaduizi.com/*",
- hide: [".content-container-open-btn"],
- expand: [".content-section.content-section-container"],
- },
- {
- match: "*://www.chinaz.com/*",
- hide: [".contentPadding"],
- expand: ["#article-content"],
- },
- {
- match: "*://www.tianyancha.com/*",
- bindClick: [
- "a[href^=http]",
- (node, e) => {
- if (node.target == "_blank") {
- e.stopPropagation();
- }
- },
- ],
- directLink: ["*://www.tianyancha.com/security?target=*", "target"],
- },
- {
- match: "*://gitee.com/*",
- directLink: ["*://gitee.com/link?target=*", "target"],
- },
- // {
- // // 百度搜索移动端,该功能还有bug,免重定向跳转去掉,https://github.com/ViCrack/tempermonkey-script/issues/3#issuecomment-1507357746
- // match: "*://m.baidu.com/*",
- // bindClick: [
- // "div.result",
- // (node) => {
- // if (node.dataset.log) {
- // let link = JSON.parse(node.dataset.log).mu;
- // node.querySelector("article").setAttribute("rl-link-href", link);
- // }
- // },
- // ],
- // },
- {
- match: "*://www.wxnmh.com/*",
- hide: [".hide-article-box"],
- expand: ["#message_content"],
- },
- {
- match: "*://*.douban.com/*",
- directLink: ["*.douban.com/link2/?url=*", "url"],
- hide: [".oia-readall"],
- expand: [".note-content"],
- },
- {
- match: "*://wap.sogou.com/web/*",
- directLink: ["*://wap.sogou.com/web/id=*&url=*", "url"],
- },
- {
- match: "*://m.so.com/s?q=*",
- directLink: ["*.so.com/jump?u=*", "u"],
- },
- {
- match: "*://iswbm.com/*",
- hide: ["#read-more-wrap"],
- expand: ["#container"],
- },
- {
- match: "*://www.oschina.net/*",
- hide: ["div.collapse-bar"],
- expand: ["div.article-detail"],
- directLink: ["*://www.oschina.net/action/GoToLink?url=*", "url"],
- },
- {
- match: "*://juejin.cn/post/*",
- directLink: ["*link.juejin.cn/?target=*", "target"],
- },
- {
- match: "*://www.3h3.com/soft/*",
- hide: ["#showmore"],
- expand: ["#ctext"],
- },
- {
- match: "*://finance.sina.com.cn/*",
- hide: ["#sina-cont000", "#sina-pages-u"],
- },
- {
- // https://iask.sina.com.cn/b/new2COrHbarDpB.html
- match: "*://*.sina.com.cn/*",
- hide: [".detail-text-more", "#floating-image", ".answer-mask-box", ".answer-show-button"],
- expand: [".new-pre-answer-text", ".knowledge-list-switch", ".detail-body"],
- },
- {
- match: "*://*.py.cn/code/*",
- start: () => {
- unsafeWindow.IsLevelDate = 1;
- Object.defineProperty(unsafeWindow, "IsLevelDate", {
- get: function () {
- return 1;
- },
- enumerable: true,
- configurable: true,
- });
- Object.defineProperty(unsafeWindow, "is_login", {
- get: function () {
- return 1;
- },
- enumerable: true,
- configurable: true,
- });
- },
- },
- {
- match: "*://m.36kr.com/*",
- hide: [".kr-mobile-goapp", ".article-goapp", ".float-app-button-wrp", ".article-top-swiper-goapp"],
- expand: ["#body-content"],
- },
- {
- match: ["*://m.imooc.com/*", "*://www.imooc.com/*"],
- hide: [".wenda-more-wrap.js-wenda-more", "#js-appload", ".js-footer-appload", ".detail-content.long-content .showMore", ".hide-articel-box", ".js-show-reply-btn.hide-answer-morebtn"],
- expand: ["#wap_wenda_detail", "#wenda_content", ".detail-content.long-content", "#js-qa-wenda", ".answer-content"],
- },
- {
- match: "*://zhuanlan.zhihu.com/p/*",
- hide: [".OpenInAppButton"],
- css: `
- [class^="css-"][href]{
- display: block !important;
- }
- `,
- directLink: ["*link.zhihu.com/?target=*", "target"],
- },
- {
- match: "*://www.zhihu.com/question/*",
- hide: [".OpenInAppButton", ".openInApp", ".DownloadGuide", ".Pc-feedAd-container", ".MobileAppHeader-downloadLink", ".ContentItem-expandButton", ".AdBelowMoreAnswers", ".MBannerAd"],
- expand: [".RichContent-inner--collapsed", ".RichContent-inner"],
- wait: [
- [".ModalExp-modalShow", (node) => ((node.parentNode.style.display = "none"), document.body.classList.remove("ModalWrap-body"))],
- [
- ".is-collapsed",
- (node) => {
- node.classList.remove("is-collapsed");
- },
- ],
- ],
- directLink: ["*link.zhihu.com/?target=*", "target"],
- css: `
- .RichContent--unescapable.is-collapsed .RichContent-inner {
- -webkit-mask-image: unset !important;
- mask-image: unset !important;
- }
- .RichContent.is-collapsed {
- cursor: unset !important;
- }
- .RichContent-inner {
- margin-bottom: 40px !important;
- }
- `,
- },
- {
- match: "*://www.cnbeta.com/articles/*",
- hide: ["div[style='display:block !important;position:fixed;bottom:0;margin-top:10px;width:100%;background:#c44;color:#fff;font-size:15px;z-index:99999']"],
- },
- {
- match: "*://xw.qq.com/cmsid/*",
- hide: [".collapseWrapper", ".redbag.item"],
- expand: ["#article_body"],
- },
- {
- // https://xw.qq.com/amphtml/20220222A03ZFF00
- match: "*://xw.qq.com/amphtml/*",
- hide: ["div.ct-unfold"],
- expand: [".article-main.fold"],
- },
- {
- match: "*://xuedingmiao.com/*",
- hide: ["#read-more-wrap"],
- expand: ["#main-content"],
- },
- {
- match: "*://blog.51cto.com/*",
- js: () => {
- safeWaitJQuery(() => {
-
- jQuery(function () {
- $(".copy_btn").removeClass("disable");
- $(".copy_btn").text("免登录复制");
- $(".article-content-wrap").unbind("copy");
- if ("undefined" == typeof unsafeWindow.uid || !unsafeWindow.uid) {
- unsafeWindow.uid = 1;
- }
- $("body")
- .off()
- .on("click", ".copy_btn", function (e) {
- e.stopPropagation();
- e.preventDefault();
- let $this = $(this);
- let text = $(this).parents(".hljs-cto").find("pre").find('[class*="language-"]')[0].textContent;
- copy(text).then(
- () => {
- $this.text("已复制");
- setTimeout(function () {
- $this.text("免登录复制");
- }, 2000);
- },
- (e) => {
- $this.text("复制失败:" + e);
- setTimeout(function () {
- $this.text("免登录复制");
- }, 2000);
- }
- );
- return false;
- });
- });
- });
- },
- },
- {
- match: "*://wap.peopleapp.com/article/*",
- hide: [".read-more"],
- expand: [".article-wrapper.has-more-high"],
- },
- {
- match: "*://baike.baidu.com/item/*",
- wait: [
- [
- // 需要循环?
- ".yx-load-more-inner.J-yx-load-moreContent",
- (node) => {
- node.dispatchEvent(new Event("tap"));
- document.getElementById("ui_refresh_down").style.display = "none";
- return false;
- },
- ],
- ],
- },
- {
- match: ["*://m.jb51.cc/*", "*://www.jb51.cc/*"],
- hide: ["#read-more-wrap"],
- expand: ["#container"],
- },
- {
- match: ["*://www.yiidian.com/*", "*://yiidian.com/*"],
- hide: ["#read-more-wrap"],
- expand: ["#yArticle"],
- },
- {
- match: "*://bbs.elecfans.com/m/*",
- hide: [".conMore", ".login-reg-fixed"],
- expand: [".postListCon"],
- },
- {
- match: ["*://www.elecfans.com/*", "*://m.elecfans.com/*"],
- hide: [".seeHide_new_login", ".open_app.open_app_fixed", ".login-reg-fixed", ".seeHide"],
- expand: [".article_content", ".simditor-body"],
- },
- {
- match: "*://www.bandbbs.cn/threads/*",
- hide: [".bbCodeBlock-expandLink.js-expandLink"],
- wait: [[".js-expandWatch:not(.is-expanded)", (node) => node.classList.add("is-expanded")]],
- },
- {
- match: "*://chejiahao.m.autohome.com.cn/info/*",
- hide: ["#continue_reading"],
- expand: [".major-long-details"],
- wait: [[".pgc-details .fn-hide", (node) => node.classList.remove("fn-hide")]],
- },
- {
- match: "*://www.bjtzdbzz.com/*",
- hide: [".pc-request-btn", ".mb-request-btn"],
- expand: [".detail-content-desc-show"],
- },
- {
- match: "*://m.21jingji.com/article/*",
- hide: [".content .mask"],
- expand: [".txtContent"],
- },
- {
- // https://zhidao.baidu.com/question/423275263.html
- match: "*://zhidao.baidu.com/question/*",
- hide: [".w-detail-display-btn-text", ".wgt-best-mask", ".wgt-answers-mask", ".wgt-question-desc-action", ".w-reply-text .unfold", "div.wgt-target .target-text .wgt-target-mask"],
- expand: [".w-detail-container.w-detail-index", "div[id^=best-content-]", "div[id^=answer-content-]", ".wgt-question-desc-inner", ".w-reply-text", "div.wgt-target .target-text", ".w-detail-container.w-detail-single"],
- wait: [
- ["#show-answer-hide", (node) => {
- node.dispatchEvent(new Event("click"));
- }]
- ],
- },
- {
- match: "*://haokan.baidu.com/v*",
- hide: [".share-origin.wx-share-launch", ".player-pause-code-bottom-text", ".player-pause-code-inner"],
- },
- {
- match: "*://www.xz577.com/*",
- hide: [".article-content-body-more1"],
- expand: [".con2"],
- },
- {
- match: "*://www.it1352.com/*",
- hide: [".arc-body-main-more"],
- expand: [".arc-body-main"],
- js: () => {
- $.cookie("olduser", "1", {
- domain: "it1352.com",
- expires: 1500,
- });
- },
- },
- {
- match: "*://g.pconline.com.cn/*",
- hide: [".btnForAppOpenA", ".btnForAppOpenImg", ".add_artilce_handle", ".WakeUptop"],
- expand: [".art-content"],
- },
- {
- match: "*://3w.huanqiu.com/*",
- hide: ["#more"],
- expand: ["#content"],
- },
- {
- match: ["*://m.huanqiu.com/*"],
- hide: [".unfold-btn"],
- expand: [".article-content", ".article .content"],
- start: () => {
- Element.prototype._attachShadow = Element.prototype.attachShadow;
- Element.prototype.attachShadow = function () {
- let css = `
- .unfold-btn
- {
- display: none !important;
- visibility:hidden !important;
- max-height: 0 !important;
- max-width: 0 !important;
- height: 0 !important;
- width: 0 !important;
- }
-
- .article-content, .article .content
- {
- height: auto !important;
- max-height: unset !important;
- overflow: unset !important;
- -webkit-line-clamp: unset !important;
- }
- `;
- let style = document.createElement("style");
- style.type = "text/css";
- try {
- style.innerHTML = css;
- } catch (x) {
- style.innerText = css;
- }
- let shadow = this._attachShadow({ mode: "open" });
- shadow.appendChild(style);
- return shadow;
- };
- },
- wait: [
- [
- ".unfold-btn",
- (node) => {
- node.dispatchEvent(new Event("click"));
- node.dispatchEvent(new Event("tap"));
- },
- ],
- ],
- },
- {
- match: "*://iknow.lenovo.com.cn/*",
- hide: [".coverQRCode"],
- js: () => {
- localStorage.setItem("scanQRCode", "1");
- $(document).off("scroll.unable");
- },
- },
- {
- // https://www.jianshu.com/p/e7dc41b6ea54
- match: "*://www.jianshu.com/p/*",
- hide: [".download-app-guidance", ".call-app-btn", "#jianshu-header", "#note-show .content .show-content-free .collapse-tips", ".download", ".note-comment-above-ad-wrap", ".close-collapse-btn", ".open-app-btn", ".app-open", "#guangtui", "#fixed-ad-container", ".fubiao-dialog"],
- expand: ["#note-show .content .show-content-free .collapse-free-content"],
- directLink: ["*://link.jianshu.com/?t=*", "t", "*://links.jianshu.com/go?to=*", "to"],
- },
- {
- // 百度新闻, 百家号
- match: ["*://baijiahao.baidu.com/s*", "*://ext.baidu.com/api/comment/v1/page/list*", "*://mbd.baidu.com/newspage/*", "*://www.baidu.com/#iact=wiseindex/tabs/news/activity/newsdetail=*"],
- hide: [".packupButton", ".oPadding", ".newUnfoldFullBox.contentPadding", ".undefined", ".foldMaskWrapper", "#headDeflectorContainer"],
- expand: [".mainContent", "#mainContentContainer"],
- wait: [
- ["p:contains('百度APP内阅读')", (node) => node.parentNode.parentNode.removeChild(node.parentNode)],
- [".layer-content.layer-content-shown", (node) => node.querySelector(".layer-itemBtn.normal").dispatchEvent(new Event("click"))],
- ],
- },
- {
- match: ["*://download.csdn.net/download/*"],
- js: () => {
- let btn = $(".more-wrap").find(".el-button");
- btn.removeAttr("data-report-click");
- btn.click()
- $("#desc-text").prop("checked", true);
- }
- },
- {
- match: ["*://gitcode.csdn.net/*"],
- hide: [".article-show-more", ".article-detail .user-desc-fix", ".content-ai"],
- expand: [".article-detail .main-content .user-article-hide"],
- },
- {
- match: ["*://wenku.csdn.net/*"],
- hide: [".article-box .cont .open", ".article-box .vip", ".article-box pre code .lowerBox"],
- expand: [".article-box .cont.first-show", ".markdown_views .hljs"],
- },
- {
- // https://huaweicloud.csdn.net/657c0ecddafaf23eeaee29b9.html
- match: ["*://huaweicloud.csdn.net/*", "*://openatomworkshop.csdn.net/*"],
- hide: [".article-detail .main-content .user-article-hide .article-show-more", ".article-detail .user-desc-fix"],
- expand: [".article-detail .main-content", ".article-detail .main-content .user-article-hide"],
- },
- {
- // https://ask.csdn.net/questions/8082390/54571405
- match: ["*://ask.csdn.net/*"],
- hide: [".expandBtn"],
- expand: [".ask-issue-content"],
- js: () => {
- $('.answer-more').click();
- }
- },
- {
- match: "*://blog.csdn.net/*",
- hide: [".weixin-shadowbox.wap-shadowbox", ".aside-header-fixed", ".hide-preCode-box", "#m_toolbar_left .m_toolbar_left_app_btn", ".readall_box", ".feed-Sign-span", ".btn_mod", ".btn_app_link", ".btn-readmore", ".comment_read_more_box", ".btn_open_app_prompt_div", ".feed-Sign-weixin"],
- expand: [".article_content", "#article_content", "#comment", ".set-code-hide"],
- directLink: ["*://link.csdn.net/?target=*", "target"],
- bindClick: [
- "a[href^=http]",
- (node, e) => {
- if (node.target == "_blank" && !node.hostname.includes(".csdn.net")) {
- e.stopPropagation();
- }
- },
- ],
- // https://greasyfork.org/zh-CN/scripts/440400-%E8%87%AA%E5%8A%A8%E5%B1%95%E5%BC%80%E5%85%A8%E6%96%87%E9%98%85%E8%AF%BB%E6%9B%B4%E5%A4%9A/discussions/224754
- css: `
- #content_views,code,pre {
- -webkit-touch-callout: auto !important;
- -webkit-user-select: auto !important;
- -khtml-user-select: auto !important;
- -moz-user-select: auto !important;
- -ms-user-select: auto !important;
- user-select: auto !important;
- }
- main div.blog-content-box pre {
- max-height: unset;
- overflow-y: unset;
- }
- `,
- js: () => {
- safeWaitJQuery(() => {
- jQuery(function () {
- jQuery(function () {
- jQuery(".recommend-jump-app").removeAttr("id");
- jQuery(".recommend-jump-app")
- .off("click")
- .on("click", (e) => {
- let url = jQuery(this).find("a.flag").attr("href");
- if (url) {
- location.href = url;
- }
- });
- jQuery("a[data-report-click]").removeAttr("data-report-click");
- jQuery("a[data-report-query]").removeAttr("data-report-query");
- if (typeof unsafeWindow.csdn != "undefined") {
- // https://github.com/adlered/CSDNGreener
- jQuery("code").attr("onclick", "mdcp.copyCode(event)");
- try {
- unsafeWindow.csdn.copyright.init("", "", "");
- } catch (err) { }
- try {
- Object.defineProperty(unsafeWindow.csdn.report, "reportClick", {
- value: function () {
- return true;
- },
- writable: false,
- configurable: false,
- });
- } catch (err) { }
- try {
- Object.defineProperty(unsafeWindow, "articleType", {
- value: 0,
- writable: false,
- configurable: false,
- });
- } catch (err) { }
- }
- });
- });
- });
- },
- },
- {
- match: "*://jingyan.baidu.com/article/*",
- hide: [".read-whole-mask"],
- expand: [".exp-content-container"],
- },
- ];
-
- function matchRule(str, rule) {
- var escapeRegex = (str) => str.replace(/([.*+?^=!:${}()|\[\]\/\\])/g, "\\$1");
- return new RegExp("^" + rule.split("*").map(escapeRegex).join(".*") + "$").test(str);
- }
-
- // https://greasyfork.org/zh-CN/scripts/416338
- function parseUrl(href) {
- if (!href) return {};
- let search;
-
- try {
- // 链接
- const url = new URL(href);
- ({ search } = url); // 主要处理对hash的search
-
- if (!search && url.hash.includes("?")) {
- search = url.hash.split("?")[1];
- }
- } catch (err) {
- // 非链接,如:a=1&b=2、?a=1、/foo?a=1、/foo#bar?a=1
- if (href.includes("?")) {
- search = href.split("?")[1];
- } else {
- search = href;
- }
- }
-
- const searchParams = new URLSearchParams(search);
- return [...searchParams.entries()].reduce((acc, [key, value]) => ((acc[key] = value), acc), {});
- }
-
- function randomString(length, chars) {
- let result = "";
- for (let i = length; i > 0; --i) result += chars[Math.floor(Math.random() * chars.length)];
- return result;
- }
-
- function setCookie(name, value, days) {
- let expires = "";
- if (days) {
- let date = new Date();
- date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);
- expires = "; expires=" + date.toUTCString();
- }
- document.cookie = name + "=" + (value || "") + expires + "; path=/";
- }
-
- function getCookie(name) {
- let nameEQ = name + "=";
- let ca = document.cookie.split(";");
- for (let i = 0; i < ca.length; i++) {
- let c = ca[i];
- while (c.charAt(0) == " ") c = c.substring(1, c.length);
- if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
- }
- return null;
- }
-
- function eraseCookie(name) {
- document.cookie = name + "=; Max-Age=-99999999;";
- }
-
- function clearAdLoop() {
- let id = setTimeout(";");
- for (let i = 0; i < id; i++) {
- clearTimeout(i);
- }
- id = setInterval(";");
- for (let i = 0; i < id; i++) {
- clearInterval(i);
- }
- }
-
- function safeWaitJQuery(callbackFunc) {
- let jQueryTimer = setInterval(function () {
- if (typeof jQuery !== "undefined") {
- clearInterval(jQueryTimer);
- callbackFunc(jQuery);
- }
- }, 300);
- }
-
-
- function nativeCopy(value) {
- return new Promise((resolve, reject) => {
- let textArea = document.createElement("textarea");
- textArea.value = value;
- textArea.style.top = "0";
- textArea.style.left = "0";
- textArea.style.position = "fixed";
- document.body.appendChild(textArea);
- textArea.focus();
- textArea.select();
- try {
- document.execCommand("copy");
- setTimeout(() => {
- resolve(value);
- }, 1);
- } catch (e) {
- setTimeout(() => {
- reject(e);
- }, 1);
- }
- document.body.removeChild(textArea);
- });
- }
-
- function copy(value) {
- return new Promise((resolve, reject) => {
- navigator.clipboard
- ? navigator.clipboard.writeText(value).then(resolve, function () {
- nativeCopy(text).then(resolve, reject);
- })
- : nativeCopy(text).then(resolve, reject);
- });
- }
-
- function querySelectorIncludesText(selector, text) {
- return Array.from(document.querySelectorAll(selector)).filter((el) => el.textContent.includes(text));
- }
-
- // https://github.com/Shawak/TwitchSquad/blob/main/twitchsquad.user.js
- if (typeof GM_addStyle === "undefined") {
- GM_addStyle = function (css) {
- let head = document.getElementsByTagName("head")[0],
- style = document.createElement("style");
- if (!head) {
- return;
- }
- style.type = "text/css";
- try {
- style.innerHTML = css;
- } catch (x) {
- style.innerText = css;
- }
- head.appendChild(style);
- };
- }
- if (typeof unsafeWindow == "undefined") unsafeWindow = window;
-
- const readyName = randomString(8, "abcdefghijklmnopqrstuvwxyz");
-
- // https://greasyfork.org/zh-CN/scripts/28497
- var EventTarget_addEventListener = EventTarget.prototype.addEventListener;
- var document_addEventListener = document.addEventListener;
- var Event_preventDefault = Event.prototype.preventDefault;
-
-
- for (var website of websites) {
- let hit = false;
- if (Array.isArray(website.match)) {
- hit = website.match.some((s) => matchRule(window.location.href, s));
- } else {
- hit = matchRule(window.location.href, website.match);
- }
-
- if (hit) {
- console.log(website);
- let style = "";
- if ("hide" in website && website.hide.length > 0) {
- style +=
- website.hide.join(",\n") +
- `
- {
- display: none !important;
- visibility:hidden !important;
- max-height: 0 !important;
- max-width: 0 !important;
- height: 0 !important;
- width: 0 !important;
- }
-
- `;
- }
- if ("expand" in website && website.expand.length > 0) {
- style +=
- website.expand.join(",\n") +
- `
- {
- height: auto !important;
- max-height: unset !important;
- overflow: unset !important;
- -webkit-line-clamp: unset !important;
- }
-
- `;
- }
- if ("disable" in website && website.disable.length > 0) {
- style +=
- website.disable.join(",\n") +
- `
- {
- pointer-events: none !important;
- }
-
- `;
- }
- if ("css" in website && website.css.length > 0) {
- style += website.css;
- }
- GM_addStyle(style);
-
- if ("wait" in website) {
- // TODO 需要换种方式优化
- let ready = [];
- let id = setInterval(() => {
- try {
- for (let w of website.wait) {
- if (!(w[0] in ready)) {
- let nodeList;
- let m = w[0].match(/(.+?):contains\(\s*['"](.+?)['"]\s*\)/);
- if (m) {
- nodeList = querySelectorIncludesText(m[1], m[2]);
- } else {
- nodeList = document.querySelectorAll(w[0]);
- }
- let allNodeFinish = nodeList.length > 0;
- nodeList.forEach((node) => {
- if (!node.dataset[readyName]) {
- if (w[1] === "click") {
- node.dispatchEvent(new Event("click"));
- node.dispatchEvent(new Event("tap"));
- node.click();
- } else {
- let callret = w[1].call(node, node); // 返回值
- if (callret === false) {
- allNodeFinish = false;
- return;
- }
- }
- node.dataset[readyName] = true;
- }
- });
- if (allNodeFinish) {
- ready.push(w[0]);
- }
- }
- }
- if (ready.length == website.wait.length) {
- clearInterval(id);
- }
- } catch (x) {
- clearInterval(id);
- }
- }, 1000);
- }
-
- if ("directLink" in website) {
- // 去除链接重定向
-
- // 支持鼠标左右键和拖拽打开超链接
- document.addEventListener(
- "mousedown",
- (e) => {
- // https://greasyfork.org/zh-CN/scripts/20431-zhihu-link-redirect-fix
- let dom = e.target;
- let target = dom.closest("a[href]");
- if (target) {
- let d = website.directLink;
- for (let i = 0; i < d.length; i += 2) {
- if (matchRule(target.href, d[i])) {
- if (typeof d[i + 1] === "function") {
- d[i + 1].call(target, target);
- } else {
- let param = parseUrl(target.href);
- if (param[d[i + 1]]) {
- target.href = param[d[i + 1]];
- }
- }
- // 避免泄露来源, 加强隐私保护
- if (target.target == "_blank") {
- let rel = target.getAttribute("rel");
- if (rel != null) {
- if (!rel.includes("noreferrer")) {
- target.setAttribute("rel", rel + " noreferrer");
- }
- } else {
- target.setAttribute("rel", "noreferrer");
- }
- }
- }
- }
- }
- },
- true
- );
- }
-
- if ("bindClick" in website) {
- document.addEventListener(
- "click",
- (e) => {
- let dom = e.target;
- let d = website.bindClick;
- let target = dom.closest(d[0]);
- if (target) {
- d[1].call(target, target, e);
- }
- },
- true
- );
- }
-
- if ("start" in website) {
- website.start();
- }
-
- if ("js" in website) {
- if (document.readyState == "complete") {
- website.js();
- // alert("程序出现异常");
- // GM_openInTab("https://greasyfork.org/zh-CN/scripts/440400/feedback");
- } else {
- document.addEventListener("DOMContentLoaded", website.js);
- }
- }
-
- if ('hookEvent' in website) {
-
- function addEventListener(type, func, useCapture) {
- var _addEventListener = this === document ? document_addEventListener : EventTarget_addEventListener;
- if (typeof obj === 'function' && website.hookEvent(type, func, useCapture)) {
- return true
- } else if (website.hookEvent.includes(type)) {
- return true
- } else {
- _addEventListener.apply(this, arguments);
- }
- }
-
- EventTarget.prototype.addEventListener = addEventListener;
- document.addEventListener = addEventListener;
-
- var frames = document.querySelectorAll("frame")
- if (frames) {
- for (let i = 0; i < frames.length; i++) {
- frames[i].contentWindow.document.addEventListener = addEventListener;
- }
- }
-
- document.addEventListener("DOMContentLoaded", function () {
- var frames = document.querySelectorAll("frame")
- if (frames) {
- for (let i = 0; i < frames.length; i++) {
- frames[i].contentWindow.document.addEventListener = addEventListener;
- }
- }
- });
- }
-
- break;
- }
- }
- })();