धन्यवाद दिशा ओर इशारा करते हुए के लिए Wladimir Palant
, फिर भी यह अभी भी मुझे काफी समय लगा अंतिम कोड पता लगाने की। मैंने भविष्य में दूसरों के संदर्भ के लिए अपना परिणाम यहां दिया। (मैं विस्तार के उद्देश्य के लिए एक छोटा सा यहाँ कोड को सरल बनाया है, लेकिन मुख्य संरचना सही होना चाहिए।)
content.js: (विकल्प पृष्ठ खोलने के लिए एक लिंक पर क्लिक करें)
$("#options").click(function(){
self.port.emit("open_options", {});
});
background.js :
//regsiter the event
backgroundInit = function(worker) {
worker.port.on("open_options", function(request){
var tabs = require("sdk/tabs");
tabs.open({
//open a new tab to display options page
url: self.data.url("options.html"),
});
}
worker.port.on("pull_preferences", function(request){
var preferences = null;
//get preferences (from simple storage or API)
woker.emit("update_content_preferences", {preferences:preferences});
});
worker.port.on("push_preferences", function(request){
var preferences = request.preferences;
//write the preferences (to simple storage or API)
});
}
//register the page, note that you could register multiple ones
pageMod.PageMod({
include: self.data.url('options.html'),
contentScriptFile: [ self.data.url("lib/jquery-1.11.3.min.js"),
self.data.url("options.js")],
contentScriptWhen: 'end',
onAttach: backgroundInit
});
options.js: (इस पेज सामग्री स्क्रिप्ट के संदर्भ पर भी है)
$(document).ready(function(){
self.port.on("update_content_preferences", function(request){
var preferences = request.preferences;
//update options page values using the preferences
});
$("#save").click(function(){
var preferences = null;
//get preferences from options page
self.port.emit("push_preferences", {preferences:preferences});
});
self.port.emit("pull_preferences", {}); //trigger the pull upon page start
});
संदर्भ: https://developer.mozilla.org/en-US/Add-ons/SDK/High-Level_APIs/tabs
स्रोत
2016-02-08 10:06:22
ठीक है, सरल-prefs मॉड्यूल का उपयोग किया। ठीक काम करता है, इसके लिए धन्यवाद! – dvcrn
धन्यवाद @Wladimir .. अच्छी पोस्ट .. – pratikabu
अंततः मैंने जो कहा है उसका एक अच्छा कार्यान्वयन पूरा किया। मैं निश्चित रूप से जो किया उसके कामकाजी नमूना पोस्ट करूँगा .. संकेतों के लिए धन्यवाद .. – pratikabu