油猴脚本-指定classname和id去除广告
// ==UserScript==
// @name CSDN去除反人类设计
// @namespace http://tampermonkey.net/
// @version 0.9
// @description 移除CSDN反人类设计
// @author You
// @match *://*.csdn.net/*
// @icon data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @grant none
// ==/UserScript==
(function() {
'use strict';
// ===============
// === 干掉广告
// ===============
// 广告classname
var fuck_class_ad = ["programmer1Box","toolbar-advert",'blog-slide-ad-box','top-special-info','app-qr-box',"recommend-item-box-tow"];
// 广告id
var fuck_id_ad = ['recommendAdBox','kp_box_ww9877','kp_box_www_content','kp_box_www_swiper','kp_box_www_swiper_ban','nps-box',"footerRightAds","asideNewNps","recommendNps","recommend-item-box-tow"];
var ad_class_len = fuck_class_ad.length;
var ad_id_len = fuck_id_ad.length;
// 已经干掉的数量
var ad_kill_num = 0;
// 重复检查X轮
var check_num = 30;
console.log('csdn广告去除启动...');
// 循环检查
var t_ad = setInterval(function(){
// 寻找指定classname标签的元素并干掉
for(var i = 0;i<ad_class_len;i++){
//console.log('寻找 classname=:'+fuck_class_ad[i]+'的元素');
var tarlist = document.getElementsByClassName(fuck_class_ad[i]);
if(tarlist.length > 0){
var ad = document.getElementsByClassName(fuck_class_ad[i])[0];
if(ad != undefined){
ad_kill_num++;
ad.remove();
console.log( 'classname='+ fuck_class_ad[i] + '的元素找到了,并且已干掉!!!');
}else{
//console.log(ad);
}
}
}
// 寻找指定id标签的元素并干掉
for(var i2=0;i2<ad_id_len;i2++){
//console.log('寻找 id=:'+fuck_id_ad[i]+'的元素');
var ad2 = document.getElementById(fuck_id_ad[i2]);
if(ad2 != null){
ad_kill_num++;
ad2.remove();
console.log( 'id='+ fuck_id_ad[i] + '的元素找到了,并且已干掉!!!');
}else{
//console.log(ad2);
}
}
// 做完清除就关闭遍历广告
if(ad_kill_num == (ad_class_len + ad_id_len) || check_num <= 0){
console.log('csdn广告清除完毕 ^-^');
clearInterval(t_ad);
}
check_num--;
},300);
// ======================
// === 绕过 关注博主可读
// ======================
setTimeout(function(){
var article = document.getElementById('article_content');
if(article.style.length > 0){
// 干掉 'height:2000px ; overflow:hidden'
article.style = [];
// 干掉 '关注按钮' 及 阴影遮罩
document.getElementsByClassName("hide-article-box hide-article-pos text-center")[0].style.display = 'none';
}
console.log('-> 绕过关注 完毕!!!');
},200);
// ===========================
// === 点击按钮展开所有代码段
// ===========================
var check_pre_code_count = 20; // 重复检查X轮
var t_hidecode = setInterval(function(){
var pre_code = document.getElementsByClassName("set-code-hide");
while(pre_code.length > 0){
// 删掉下箭头按钮
pre_code[0].childNodes[1].remove();
// 展开代码段
pre_code[0].classList = [];
}
if(--check_pre_code_count <= 0){
clearInterval(t_hidecode);
console.log('-> 展开所有代码段 完毕!!!');
}
},300);
// ===========================
// === 干掉复制小尾巴
// ===========================
window.csdn.copyright.textData = '';
console.log('-> 干掉复制小尾巴 完毕!!!');
// ========================================
// === 干掉私信中来自CSDN官方的垃圾信息轰炸
// =========================================
// setTimeout(function(){
// var chat_list = document.getElementsByClassName('chat-list')[0];
// if(chat_list == undefined){
// // 不是私信页面
// return;
// }
// var chat_item_list_div = chat_list.childNodes[1].childNodes[0].childNodes[0];
// var chat_item = chat_item_list_div.getElementsByClassName('msg-item');
// var chat_item_len = chat_item.length;
// for(var j=0;j<chat_item_len;j++){
// var dialog = chat_item[j].getElementsByClassName('msg-relation relation-0');
// if(dialog.length > 0){
// if(dialog[0].textContent.indexOf('官方') >= 0){
// // 点击"删除对话"
// chat_list.childNodes[0].childNodes[2].click();
// // 点击"确认"
// document.getElementsByClassName('el-button el-button--default el-button--small el-button--primary')[0].click();
// // 索引变了
// //j--;
// //chat_item_len--;
// }
// }
// }
// console.log('-> 干掉来自官方的问候 完毕!!!');
// },200);
})();
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构