0

这个问题更多是为了他人的利益和我自己的好奇心,因为我现在已经综合了一个解决方法(使用"matches": ["http://*/*", "https://*/*"]and if (location.hostname == "www.youtube.com").

无论如何,当我遇到这样的问题时,我会将代码分解成越来越简单的形式,直到它开始工作。然后我可以弄清楚是什么让代码出错了。但是我现在已经达到了它无法变得更简单并且仍然无法正常工作的地步。Chrome 只是不会将内容脚本注入任何 YouTube 页面。

 

文件下面的 ZIP 链接

清单.json:

{
    "name": "test",
    "version": "0",
    "manifest_version": 2,

    "content_scripts": [ 
        {
            "js": [
                "test.js"
            ],
            "matches": [
                "*://youtube.com/*"
            ],
            "run_at": "document_end",
            "all_frames": true
        }
    ]
}

测试.js:

alert("test");

 

进步

不起作用:

  • 改变值并静态定义(无通配符)matchesURL
  • 改变的值run_at
  • 改变的值all_frames
  • 改变脚本test.js
  • 在全新安装的 Windows 7 x64 上全新安装 Chrome v24.0.1312.57

是否有效:

  • 将值更改为matchesYouTube 以外的任何内容
  • matches将值更改为"http://*/*", "https://*/*"

 

我觉得我在这里遗漏了一些非常明显的东西,但已经好几天了.. ;/

4

1 回答 1

1

如果您将清单中的匹配定义为“ http://www.youtube.com/ *” ,这对我有用

于 2013-02-20T18:24:20.250 回答