在我的chrome扩展程序中,我想显示一个页面,其中包含用户的一些使用情况统计信息。我一直在尝试通过在background.js中创建一个新标签来显示HTML页面来解决此问题:
chrome.tabs.create({
url: '/results.html',
active: true
});
results.html
如下所示:
<!DOCTYPE html>
<html lang='en'>
<head>
<script src='js/charts.js'></script>
</head>
<body>
<canvas id='myChart' style='height:400px; max-width:800px; background-color:red;'></canvas>
</body>
<script src='js/results.js'></script>
</html>
问题在于,然后我需要将实际使用情况数据从background.js页面传递到这个新的results.html页面。我唯一想到的就是添加另一个附加到results.html页面的内容脚本。
"content_scripts": [
{
"matches": [
"*://*.results.html"
],
"js": ["js/results_content.js"],
"run_at": "document_idle"
}
]
这似乎不起作用,否则,我可以让后台页面通过results_content.js
脚本发送数据并显示图表。
我能想到的唯一另一个想法是,打开一个新标签至obscurewebsite.com并拥有一个内容脚本,该脚本执行类似document.body.innerHTML = ""
的操作,并仅使用javascript来重建我的页面。我不喜欢这种解决方案。
是否可以通过chrome.tabs
引用传递信息?还是另一种传递数据的方式?任何帮助表示赞赏。