You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JS新手求助:如何用Tampermonkey永久修改浏览器文本?

用Tampermonkey永久替换页面文本为"Tacocat"的实用脚本

一、基础静态页面脚本(适配无动态加载的页面)

给你一个直接能用的模板,复制到Tampermonkey的新脚本里即可:

// ==UserScript==
// @name         替换文本为Tacocat
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  把页面指定文本替换成Tacocat
// @author       You
// @match        *://*/*  // 改成你要生效的网站地址,比如https://example.com/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // 定义要替换的原文本和目标文本
    const targetText = "要替换的原文本"; // 替换成你实际要修改的那个文本
    const replaceWith = "Tacocat";

    // 遍历页面所有文本节点进行替换
    function replaceTextNodes(node) {
        if (node.nodeType === Node.TEXT_NODE) {
            node.textContent = node.textContent.replace(new RegExp(targetText, 'g'), replaceWith);
        } else {
            // 递归处理子节点
            for (let child of node.childNodes) {
                replaceTextNodes(child);
            }
        }
    }

    // 启动替换
    replaceTextNodes(document.body);
})();

关键修改点:

  • @match:把*://*/*改成目标网站,比如只在知乎生效就写https://www.zhihu.com/*,留星号则所有网站生效。
  • targetText:填写你要替换的原始文本,注意大小写、空格要完全匹配,或者用'gi'参数忽略大小写(把正则改成new RegExp(targetText, 'gi'))。

二、处理动态加载的内容(多数网站会遇到)

如果目标网站是动态加载内容(比如滚动加载、AJAX刷新),基础脚本只会替换初始加载的内容,后续加载的文本不会变化。这时候用MutationObserver监听页面变化,自动重新替换:

// ==UserScript==
// @name         动态替换文本为Tacocat
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  自动替换页面静态+动态加载的文本为Tacocat
// @author       You
// @match        *://*/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    const targetText = "要替换的原文本";
    const replaceWith = "Tacocat";

    function replaceTextNodes(node) {
        if (node.nodeType === Node.TEXT_NODE) {
            node.textContent = node.textContent.replace(new RegExp(targetText, 'g'), replaceWith);
        } else {
            for (let child of node.childNodes) {
                replaceTextNodes(child);
            }
        }
    }

    // 初始替换
    replaceTextNodes(document.body);

    // 监听页面DOM变化,自动重新替换
    const observer = new MutationObserver((mutations) => {
        mutations.forEach((mutation) => {
            mutation.addedNodes.forEach((node) => {
                replaceTextNodes(node);
            });
        });
    });

    // 启动监听
    observer.observe(document.body, {
        childList: true,
        subtree: true
    });
})();

三、常见问题排查(为什么教程没效果)

  • 检查@match是否正确:脚本的匹配规则没包含目标网站的话,根本不会运行。
  • 确认Tampermonkey脚本开关已开启:打开Tampermonkey面板,看对应脚本的状态。
  • 打开浏览器控制台(F12)看报错:如果脚本有语法错误或逻辑问题,控制台会显示具体错误信息。

内容的提问来源于stack exchange,提问作者user25117879

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 17:16:09