在事件$ window.ready之前从chrome扩展执行代码

时间:2013-12-30 21:44:15

标签: javascript jquery google-chrome-extension

我想在事件$ window.ready。

之前从chrome扩展程序执行代码

显然是“runs_at”:“document_start”应该有效,according to Google

  

对于“document_start”,文件是在来自css的任何文件之后注入的,但是在构造任何其他DOM或运行任何其他脚本之前。

然而,它似乎不起作用。以下代码:

的manifest.json:

{
    "name": "Testextension Extension",
    "manifest_version": 2,
    "version": "0.1",
    "content_scripts": [{
        "matches": [
            "file:///C:/test.html"
        ],
        "js": ["test.js"],
        "runs_at": "document_start"
    }]
}

test.js:

console.log("the extension content script is happening");

的test.html:

<html>
<head>
<script src="jquery.min.js"></script>
<script type="application/javascript">
    console.log ("script is happening in page");
    $(window).ready(function () {console.log("window.ready is happening");});
    $(document).ready(function () {console.log("document.ready is happening");});
</script>
</head>
<body>
</body>
</html>

给出以下控制台输出:

script is happening in page
window.ready is happening
document.ready is happening
the extension content script is happening 

我不拥有我的扩展程序应该处理的页面,所以我无法修改它以在我的Chrome扩展程序后执行。

我做错了什么,或者Chrome出了问题?

我该怎么办?

编辑:这是关于我使用“runs_at”而不是“run_at”吗?

edit2:对不起,好像是关于那个。

1 个答案:

答案 0 :(得分:1)

问题存在是因为我拼写错误“runs_at”(而不是“run_at”)。我的Chrome扩展程序现在可以正常运行。