首页 > 解决方案 > 我将在哪里放置此代码以使其与 Chrome 扩展程序一起使用?

问题描述

我的代码有问题,我已经想出了如何改变网站上是否存在单词的背景颜色,但我不确定在哪里以及如何使它与谷歌扩展程序一起工作每次网站打开时,mainfest 都会运行下面的脚本。我正在考虑将代码放入inject.js,但这似乎不起作用,尽管当我在控制台中测试代码时,它在我测试的每个场合都运行良好。我不确定我是否将代码放入错误的文件中,但如果您能给我一些指示或帮助,我将不胜感激。

var element = document.getElementsByClassName('Block')[0];
var originalHtml = element.innerHTML;
var newHtml = originalHtml.replace(new RegExp("Game", "g"), "<p style='background-color: lightblue;'>Game</p>");
element.innerHTML = newHtml;

Ps 块是一行一行的单词集,有时有游戏或无游戏,我只想改变其中一个变量的颜色,以便我可以清楚地看到游戏到无游戏的分布。

标签: javascriptgoogle-chrome

解决方案


您应该在 contentscript 中编写代码。例如 content.js 并在清单文件中有条目,如

"content_scripts": [
        {
        "matches": [
            "http://*/*",
            "https://*/*"
            ],
        "js": ["content.js"],
        "run_at": "document_end"    // Pay attention to this line
        }
    ]

因此,每当您的页面在文档结束事件中加载时,您的脚本就会运行。


推荐阅读