我正在开发我的第一个扩展,并尝试创建一个简单的扩展来在页面上注入可拖动的 div。这很好用,但我想保留 div 在后台页面上的位置(我也在尝试本地存储,但想了解为什么这不起作用)。
我不需要按钮,因此没有创建 popup.html 文件,我相信该文件完全是可选的。到目前为止,它确实有效,只是注入 javascript 文件。
但是,我现在在执行 chrome.extension.getBackgroundPage() 时抛出以下错误:
未捕获错误:chrome.extension.getBackgroundPage 只能在扩展进程中使用。有关更多详细信息,请参阅内容脚本文档。
内容脚本文档似乎没有发现我的方法有任何问题:http://code.google.com/chrome/extensions/content_scripts.html
这是我正在使用的经过编辑的清单:
{
"name": "My helper",
"version": "1.0",
"description": "Tastes great",
"background_page": "background.html",
"content_scripts": [
{
"matches":["https://page.of.interest/*"],
"run_at":"document_idle",
"js":[ "jquery.js", "jquery-ui-1.8.17.custom.min.js", "my_content_script.js"],
"css": [ "my_content_script.css" ]
}
],
"permissions": [
"background"
]
}
所以我在“my_content_script.js”中运行此语句。这是否不被视为扩展过程的一部分?我可以只在 popup.html (或其他可能的?)文件上运行它吗?
如果是这种情况,那么也许只使用本地存储比尝试通过 dom 与扩展进程进行通信更容易。
尽管我对其中一些概念一无所知,但希望我已经说清楚了。