您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
隐藏B站"充电专属"内容,适配动态页面
当前为
// ==UserScript== // @name 隐藏B站"充电专属"内容 // @namespace http://tampermonkey.net/ // @version 1.13 // @description 隐藏B站"充电专属"内容,适配动态页面 // @author chemhunte // @match https://t.bilibili.com/* // @match https://space.bilibili.com/* // @grant none // @license GPL-3.0 License // ==/UserScript== (function() { 'use strict'; // 创建一个用于显示提示信息的元素 const messageDiv = document.createElement('div'); Object.assign(messageDiv.style, { position: 'fixed', top: '10px', right: '10px', padding: '10px', backgroundColor: 'rgba(0, 0, 0, 0.7)', color: 'white', borderRadius: '5px', zIndex: '9999', display: 'none' }); document.body.appendChild(messageDiv); function checkForChargingExclusive() { const items = document.querySelectorAll('.bili-dyn-list__item'); let hasHiddenItems = false; // 用于跟踪是否隐藏了任何项 items.forEach(item => { const badge = item.querySelector('.bili-dyn-card-video__badge'); const specialTitle = item.querySelector('.dyn-blocked-mask__msg-title'); const spans = item.querySelectorAll('span'); // 查找所有 span 元素 const lotteryTitle = item.querySelector('.dyn-upower-lottery__title'); // 查找抽奖标题 // 逐个条件检查 if (badge && badge.textContent.includes('充电专属')) { item.style.display = 'none'; hasHiddenItems = true; } else if (specialTitle && specialTitle.textContent.includes('专属动态')) { item.style.display = 'none'; hasHiddenItems = true; } else if (Array.from(spans).some(span => span.textContent.includes('充电专属问答') )) { item.style.display = 'none'; hasHiddenItems = true; } else if (lotteryTitle && lotteryTitle.textContent.includes('专属抽奖')) { item.style.display = 'none'; hasHiddenItems = true; } }); // 如果有隐藏项,显示提示信息 if (hasHiddenItems) { showMessage("'充电专属' 内容隐藏"); } } function showMessage(msg) { messageDiv.textContent = msg; messageDiv.style.display = 'block'; // 设置定时器在一段时间后隐藏消息 setTimeout(() => { messageDiv.style.display = 'none'; }, 3000); } // 使用MutationObserver监视DOM变化 const observer = new MutationObserver(checkForChargingExclusive); // 配置观察选项 observer.observe(document.body, { childList: true, subtree: true }); // 初始检查 checkForChargingExclusive(); })();