// ==UserScript== // @name 去除csdn的未登录禁止复制,复制的时候不携带版权声明,不登录无法查看全文,默认把代码展开 // @namespace http://tampermonkey.net/ // @version 0.4 // @description 方便程序员的使用 // @author xiaolajikiki // @match https://blog.csdn.net/* // @match https://juejin.cn/* // @icon https://g.csdnimg.cn/static/logo/favicon32.ico // @grant none // @license MIT // ==/UserScript== (function() { 'use strict'; // 应该是js通过获取content_views进行逻辑判断的,所以我把这里的id改掉就可以进行复制了 console.log(window.location.href); let yanzhengshifoubaobanjuejinAddress = /juejin/i; if(window.location.href.match(yanzhengshifoubaobanjuejinAddress)){ }else{ let divBiaoQian = document.getElementById("content_views"); divBiaoQian.id = ""; // 解决未登录需要关注博主才可以阅读全文,这不还得登录,这要解决一下 // 这样就把它的自动隐藏移除掉了 let removeDisplayContent = document.querySelector("#article_content").removeAttribute("style"); try{ // 把关注博主阅读全文这个标签移除掉 let removeGuanZhuBiaoQian = document.querySelector(".hide-article-box").remove() }catch(err){ console.log("没有关注博主阅读全文的标签") } var hideContent = document.getElementsByClassName("hide-preCode-bt"); if(hideContent.length > 0){ // 默认把代码全部展开, 因为html集合你点击以后这个标签的类名就消失了,数组的长度就发生了变化 for(let i=hideContent.length-1;i>=0;i--){ console.log(hideContent[i].click()) } } } // 这样设置以后复制的时候就不会带版权声明之类的东西了 [...document.querySelectorAll('*')].forEach(item=>{ item.oncopy = function(e) { e.stopPropagation(); } }); })();