您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Emacs-China 论坛,屏蔽指定用户的帖子
- // ==UserScript==
- // @name emacs-china user blocker
- // @namespace https://liujiacai.net/
- // @match https://emacs-china.org/
- // @grant none
- // @version 1.0
- // @author https://github.com/jiacai2050
- // @description Emacs-China 论坛,屏蔽指定用户的帖子
- // @icon https://emacs-china.org/uploads/default/optimized/2X/d/dd05943671ee57856f9d7fa7ba6497f31bfcd332_2_180x180.png
- // ==/UserScript==
- // users id your want to block
- const blockedUsers = [];
- const prefix = 'https://emacs-china.org/u/';
- let seenPostCount = 0;
- function removeBlockedPosts() {
- const allPosts = document.querySelectorAll('td.posters a');
- console.log(allPosts.length);
- if (seenPostCount >= allPosts.length) {
- // console.log('already removed, return directly');
- return;
- }
- const oldLength = seenPostCount;
- seenPostCount = allPosts.length;
- for (let i=oldLength;i<allPosts.length;i++) {
- const post = allPosts[i];
- const url = post.href;
- for (blocked of blockedUsers) {
- const userLink = prefix + blocked;
- if (url === userLink) {
- const tr = post.parentNode.parentNode;
- const titleLink = tr.firstElementChild.firstElementChild.firstElementChild;
- console.log(`remove post: ${titleLink.textContent}, url: ${titleLink.href}, by ${blocked}`);
- tr.remove();
- }
- }
- }
- }
- window.addEventListener('wheel', removeBlockedPosts);
- window.addEventListener('load', removeBlockedPosts);
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址