javascript - Chrome 扩展程序 - content_script.js 未正确加载

标签 javascript google-chrome google-chrome-extension

我正在尝试学习如何使用 content_script.js 将请求发送到我的 chrome 扩展程序的后台页面。我读过很多关于此的答案,但没有一个对我有帮助。我似乎无法让监听器执行。

Manifest.json

"background_page": "background.html",
...
"content_scripts":[ 
{
"matches": ["http://*/*"],
"run_at": "document_start",
"js": ["jquery.min.js", "content_script.js"]  
}
]
...

content_script.js

chrome.extension.sendRequest({'url': 'http://example.com'}, function(data) {
    $("#list").html(data);
});

背景.html

<script type="text/javascript">

chrome.extension.onRequest.addListener(function(request, sender, callback) {

    $.ajax({
        type: "GET",
        dataType: 'html',
        url: request.url,
        username: "username",
        password: "password",
        success: callback
    }); 
});

</script>

我需要在任何地方注入(inject) content_script.js 吗?根据我的理解,这应该在扩展加载时在后台运行。任何帮助将不胜感激。

最佳答案

由于"run_at": "document_start",当你注入(inject)这个脚本时,DOM还没有准备好,所以你不能做$("#list").html(data );

从 list 中删除该行或将代码放入 window.onload 监听器中。

关于javascript - Chrome 扩展程序 - content_script.js 未正确加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6512146/

相关文章:

javascript - Angular ng-click 不会触发我指令中的函数

google-chrome - 有没有可靠的开源可以代理UDP流量,比如QUIC?

javascript - 停止加载页面中的所有脚本

javascript - 打开/关闭 chrome 扩展

javascript - chrome 扩展 chrome.storage 如何同时进行大量获取和设置并避免竞争条件?

javascript - ExtJS 上的单元格编辑

javascript - 我应该在哪里调用 React Redux Meteor.js 混合物中的订阅

javascript - 从 Firefox 扩展获取 DOM 元素的绝对屏幕边界

javascript - Chrome 忽略注入(inject)的调试器语句

javascript - 将 HTML 添加到页面并访问 Jquery 以及用户当前选项卡的正确方法?