我正在尝试了解如何使用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);
});
background.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>
我需要在任何地方注入content_script.js吗?根据我的理解,这应该在扩展加载时在后台运行。任何帮助将不胜感激。
答案 0 :(得分:0)
由于"run_at": "document_start"
,在您注入此脚本时DOM尚未就绪,因此您无法执行$("#list").html(data);
。
从清单中删除该行或将您的代码放在window.onload
侦听器中。