// ==UserScript== // @name 屏蔽特定用户帖子 // @namespace http://tampermonkey.net/ // @version 0.2 // @description 输入用户ID来屏蔽其帖子 // @author alizoed // @match https://www.gcores.com/topics/home // @grant none // ==/UserScript== (function() { 'use strict'; // 在页面上添加输入框、保存按钮和删除按钮 var inputHTML = `
`; document.body.insertAdjacentHTML('afterbegin', inputHTML); // 当保存按钮被点击时获取用户ID并保存 document.getElementById('saveUserBtn').addEventListener('click', function() { var userId = document.getElementById('userIdInput').value; if (userId) { saveUser(userId); } }); // 当删除按钮被点击时获取用户ID并删除 document.getElementById('deleteUserBtn').addEventListener('click', function() { var userId = document.getElementById('userIdInput').value; if (userId) { deleteUser(userId); } }); // 保存用户函数 function saveUser(userId) { var blockedUsers = JSON.parse(localStorage.getItem('blockedUsers')) || []; if (!blockedUsers.includes(userId)) { blockedUsers.push(userId); localStorage.setItem('blockedUsers', JSON.stringify(blockedUsers)); alert('已保存,当前屏蔽列表: ' + blockedUsers.join(', ')); } else { alert('用户ID已存在于屏蔽列表中'); } } // 删除用户函数 function deleteUser(userId) { var blockedUsers = JSON.parse(localStorage.getItem('blockedUsers')) || []; var index = blockedUsers.indexOf(userId); if (index > -1) { blockedUsers.splice(index, 1); localStorage.setItem('blockedUsers', JSON.stringify(blockedUsers)); alert('已删除,当前屏蔽列表: ' + blockedUsers.join(', ')); } else { alert('用户ID不在屏蔽列表中'); } } // 屏蔽用户帖子函数 function blockUserPosts() { var blockedUsers = JSON.parse(localStorage.getItem('blockedUsers')) || []; var talks = document.querySelectorAll('div.talk'); talks.forEach(function(talk) { blockedUsers.forEach(function(userId) { var userLink = talk.querySelector(`a[href*="/users/${userId}"]`); if (userLink) { talk.style.display = 'none'; } }); }); } // 定时执行屏蔽操作,以处理动态加载的内容 setInterval(blockUserPosts, 1000); })();