您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Replace the label on the quote button
当前为
// ==UserScript== // @name MeFi replace quote label // @namespace https://github.com/klipspringr/mefi-userscripts // @version 2025-03-28-f // @description Replace the label on the quote button // @author Klipspringer // @supportURL https://github.com/klipspringr/mefi-userscripts // @license MIT // @match *://*.metafilter.com/* // @grant none // ==/UserScript== const getSetting = (key, defaultValue) => { try { return localStorage.getItem(key) || defaultValue; } catch { return defaultValue; } }; (async () => { if (!/^\/(\d|comments\.mefi)/.test(window.location.pathname)) return; const to = getSetting("mefi-replace-quote-label", "↩ "); // note space, for aesthetics const replaceQuoteLabels = () => { const nodes = document.querySelectorAll('a[class="quotebutton"]'); nodes.forEach((node) => (node.textContent = to)); console.log(`mefi-replace-quote-label: replaced ${nodes.length} labels`); }; const newCommentsWrapper = document.getElementById("newcomments"); if (newCommentsWrapper) { // MefiQuote listens for the "mefi-comments" event, but: // (a) my event listener wasn't picking that up, for some reason; and // (b) there would be timing issues as MefiQuote needs to complete its work first // hence using MutationObserver instead const observer = new MutationObserver(() => replaceQuoteLabels()); // listen for "childList" mutations, but not subtree as *we* are mutating that observer.observe(newCommentsWrapper, { childList: true }); } replaceQuoteLabels(); })();