您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
屏蔽Telegram特定频道的搜索和打开,触发会重定向到首页
// ==UserScript== // @name Telegram web 屏蔽指定频道 // @version 0.7 // @description 屏蔽Telegram特定频道的搜索和打开,触发会重定向到首页 // @author 涵有闲 // @homepage https://hyx.ink // @match https://web.telegram.org/* // @grant none // @namespace https://gf.qytechs.cn/users/1385884 // ==/UserScript== (function () { "use strict"; // 核心配置 const config = { // 需要屏蔽的完整用户名列表 blockList: ["@v114bot","@jisou"], // 重定向目标 baseUrl: "https://web.telegram.org/k/", // 选择器配置 selectors: { searchContainer: ".search-super", searchGroup: ".search-group-contacts", chatItem: ".row.chatlist-chat", subtitle: ".row-subtitle", }, }; /** * 检查URL是否需要屏蔽 * @param {string} url 当前URL * @returns {boolean} */ function shouldBlockUrl(url) { // 移除@符号并转换为小写进行匹配 const blockPatterns = config.blockList.map( (item) => new RegExp(item.replace("@", ""), "i") ); return blockPatterns.some((pattern) => pattern.test(url)); } /** * 处理重定向 */ function handleRedirect() { const currentUrl = window.location.href; if (shouldBlockUrl(currentUrl) && currentUrl !== config.baseUrl) { window.location.replace(config.baseUrl); } } /** * 处理搜索结果 */ function handleSearchResults() { const observer = new MutationObserver(() => { document .querySelectorAll(config.selectors.searchGroup) .forEach((group) => { group.querySelectorAll(config.selectors.chatItem).forEach((item) => { const subtitle = item .querySelector(config.selectors.subtitle) ?.textContent?.trim(); // 严格匹配完整用户名 if (config.blockList.includes(subtitle)) { item.style.display = "none"; } }); }); }); // 观察搜索结果区域 const searchContainer = document.querySelector( config.selectors.searchContainer ); if (searchContainer) { observer.observe(searchContainer, { childList: true, subtree: true, }); } } /** * 防抖函数 */ function debounce(func, wait) { let timeout; return function (...args) { clearTimeout(timeout); timeout = setTimeout(() => func.apply(this, args), wait); }; } // 主函数 const main = debounce(() => { if (window.location.hostname === "web.telegram.org") { handleRedirect(); // 保留重定向功能 handleSearchResults(); } }, 100); // 初始化 function init() { main(); // 监听 URL 变化 const pushState = history.pushState; history.pushState = function () { pushState.apply(history, arguments); main(); }; window.addEventListener("popstate", main); } // 启动 if (document.readyState === "loading") { document.addEventListener("DOMContentLoaded", init); } else { init(); } })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址