Firefox插件sdk:如何在内容脚本中使用简单存储API
Firefox add-on sdk : how to use simple-storage API in a content script?
我正在制作一个使用Erik Vold工具栏按钮的Firefox插件,我想知道如何在内容脚本中访问简单存储API。我知道你不能直接访问API。
var data = require('self').data;
var tabs = require('tabs');
var pageMod = require('page-mod');
var ss = require('sdk/simple-storage');
var tbb = require('toolbarbutton').ToolbarButton({
id: 'button',
label: 'us-button',
image: data.url('img/on.png'),
onCommand: function () {
tabs.activeTab.attach ({
contentScriptFile: [
data.url('jquery/jquery.min.js'),
data.url('jquery/jquery-ui.js'),
data.url('recuperation.js'),
data.url('dialog.js')
],
contentScriptOptions: {
imgfr: data.url('img/fr.png'),
imgen: data.url('img/en.png'),
imglogo: data.url('img/logo.png')
}
});
}
});
我的问题是:如何在我的内容脚本dialog.js中访问简单存储API
tabs.activeTab.attach (...)
返回一个worker
,您可以使用它在内容脚本和插件之间发送消息。这样,你就可以让内容脚本向插件发送消息,告诉它要在simple-storage中存储哪些数据。
所以插件这边看起来像:
let worker = tabs.activeTab.attach(...);
worker.port.on('simple-storage', function(newData) {
ss.storage = newData;
});
和内容脚本端看起来像:
self.port.emit('simple-storage', newData)
当你有newData
保存
相关文章:
- Javascript简单的timeago脚本设置为跨类或标签id
- 一个简单的粘性头jQuery脚本的问题
- 使用内容脚本中的“简单首选项”打开插件的选项页
- 用于wooccommerce的简单JQuery脚本不起作用
- 有没有更简单的方法在 Wordpress 中为多个页面模板排队脚本
- 简单的拖放JS脚本不起作用
- 使用require.js后,如何通过简单的脚本引用访问jquery全局命名空间
- 使用html表单作为python脚本输入的简单解决方案
- 将简单的Perl脚本翻译成Python,向客户端发送响应
- 为内容脚本[Chrome扩展]获取本地存储价值的简单方法
- Javascript变量未显示在简单的HTML脚本中
- 简单的 Java 脚本背景图像不起作用
- 简单的ng点击在打字脚本中不起作用
- 将coffee脚本转换为简单的扩展
- 简单的谷歌脚本,将A列的内容复制到B列
- 是否有一个简单的Javascript库或脚本来处理简单的逻辑测试
- HTML&使用简单脚本进行JavaScript(jQuery)过滤
- 有没有一个简单的脚本可以向美国/加拿大游客显示脚本1,向其他游客显示脚本2
- 简单的按钮以快速启动脚本
- HTML Javascript表单,和一个php脚本-简单的问题,帮助!这段代码是做什么的