您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
移除哔哩哔哩首页非视频推荐卡片,包含直播、漫画、课堂、番剧、国创、综艺、电影、电视剧、纪录片、广告
// ==UserScript== // @name 移除B站首页非视频推荐卡片 // @namespace https://greasyfork.org/zh-CN/scripts/520083-移除b站首页非视频推荐卡片 // @version 1.0 // @description 移除哔哩哔哩首页非视频推荐卡片,包含直播、漫画、课堂、番剧、国创、综艺、电影、电视剧、纪录片、广告 // @author xinbiaobeta // @match https://www.bilibili.com/* // @icon https://www.bilibili.com/favicon.ico // ==/UserScript== (function() { 'use strict'; // 移除 floor-single-card 元素 function removeFloorSingleCard() { const floorCards = document.querySelectorAll('.floor-single-card'); floorCards.forEach(card => card.remove()); } // 移除带有广告信息的 bili-video-card 元素 function removeAdVideoCards() { const videoCards = document.querySelectorAll('.bili-video-card.is-rcmd'); videoCards.forEach(card => { if (card.querySelector('.bili-video-card__info--ad')) { card.remove(); } }); } // 移除带有直播信息的 bili-live-card 元素 function removeLivingLiveCards() { const liveCards = document.querySelectorAll('.bili-live-card.is-rcmd.enable-no-interest'); liveCards.forEach(card => { if (card.querySelector('.bili-live-card__info--living')) { card.remove(); } }); } // 移除不包含 bili-video-card 元素的 feed-card function removeNonRcmdFeedCards() { const feedCards = document.querySelectorAll('.feed-card'); feedCards.forEach(card => { if (!card.querySelector('.bili-video-card.is-rcmd.enable-no-interest')) { card.remove(); } }); } // 移除所有不需要的元素 function removeUnwantedElements() { removeFloorSingleCard(); removeAdVideoCards(); removeLivingLiveCards(); removeNonRcmdFeedCards(); } // 使用 MutationObserver 来检测 DOM 动态变化 const observer = new MutationObserver(() => { removeUnwantedElements(); }); // 开始监听文档主体的子节点变化 observer.observe(document.body, { childList: true, // 监控添加或删除的子节点 subtree: true // 监控整个文档树(不仅仅是 body) }); // 页面加载时进行初次清理 removeUnwantedElements(); })();