1
我正在嘗試使用Firefox Addon Builder創建Firefox插件。firefox插件,將數據保存在簡單存儲中
我無法確定我可以如何將數據保存在「簡單存儲」中。
main.js
:
var data = require("self").data;
var ss = require("simple-storage");
if(typeof(ss.storage.bl) === 'undefined') {
ss.storage.bl = [];
}
blacklist = ss.storage.bl;
exports.main = function(){
var pageMod = require("page-mod");
pageMod.PageMod({
include: "*",
contentScriptWhen: 'end',
contentScriptFile: [data.url("jquery.min.js")]
});
var contextmenu = require("context-menu");
contextmenu.Item({
label: "block",
context: contextmenu.SelectorContext("a[href]"),
contentScriptFile: [data.url("jquery.min.js"),data.url("onclick.js"),data.url("core.js")]
});
};
onclick.js
:
self.on("click", function (node) {
user = node.href.substring(node.href.lastIndexOf('/') + 1);
blacklist.push(user);
blockthis();
});
收到此錯誤的所有時間:
onclick.js, line 4
in blacklist.push(user)
ReferenceError: blacklist is not defined
鏈接:https://builder.addons.mozilla.org/addon/1054941/latest/
感謝您的幫助:),但現在我還有一個問題。 這就是說,「blockthis();沒有定義」,它在「core.js」中,它位於「黑名單」中。 ()。parent_()。parent(); parent()。parent(); parent()。parent()。 blocked_div.find('img')。hide(); } } blockthis(); 看起來像我不能只寫在main.js,它使用一些jQuery的功能。我該如何解決它? – user1093555
我想'blockthis()'調用必須留在內容腳本中,只有內容腳本可以訪問網頁。我只是移動它,因爲我不知道它在做什麼。 –
如果您需要在內容腳本中使用'blacklist',那麼您將不得不通過'main.js'發送它。但是你可能會使用'page-mod'來注入這個內容腳本 - 與上下文菜單相關的內容腳本不是持久的,恕我直言不能接收消息。 –