在我正在开发的 Chrome 扩展程序中,我想在单击弹出窗口时访问在后台页面中创建和维护的数据结构。不幸的是,我一般是 Javascript 和 Chrome 扩展开发的新手,你能告诉我怎么做吗?这是否涉及弹出窗口和背景页面之间的消息传递?谢谢。
问问题
4445 次
1 回答
9
您可以编写三个这样的文件来从 popup.html 访问 background.html 中的数据结构:
//in popup.html
<script type="text/javascript" src="mainscript.js"></script>
<!-- JavaScript and HTML must be in separate files for security. -->
//in mainscript.js
chrome.extension.getBackgroundPage().data = 'your data';
//in background.html
<script type="text/javascript">
var data;
</script>
你需要一个这样的 manifest.json(也许使用 browser_action 而不是 page_action):
....
,
"background_page": "background.html",
"page_action": {
"default_icon": "your_icon.ico",
"default_title": "Your title",
"default_popup": "popup.html"
},
....
编辑:对于 chrome 扩展中的消息传递,请参阅这些功能
http://code.google.com/chrome/extensions/extension.html#method-sendRequest
http://code.google.com/chrome/extensions/extension.html#event-onRequest
这个有用的描述:
于 2012-06-11T20:58:53.680 回答