2011-03-09 125 views
1

我想在我的Firefox扩展中保存一个简单的字符串到首选项中。该字符串应该可以在不同的浏览器会话之间和重新启动后访我发现下面的代码,但由于某种原因,它不工作。我试图localStorage的前但这也不能正常工作:在首选项中保存Firefox扩展

代码保存功能:

var prefs = Components.classes["@mozilla.org/preferences-service;1"] 
       .getService(Components.interfaces.nsIPrefBranch); 

var str = Components.classes["@mozilla.org/supports-string;1"] 
     .createInstance(Components.interfaces.nsISupportsString); 

str.data = window['myglobalvariable']; 

prefs.setComplexValue("myglobvar", 
     Components.interfaces.nsISupportsString, str); 

代码检索功能:

var prefs = Components.classes["@mozilla.org/preferences-service;1"] 
       .getService(Components.interfaces.nsIPrefBranch); 

var value = prefs.getComplexValue("myglobvar", 
    Components.interfaces.nsISupportsString).data; 

我想不通为什么它不工作。

+0

我不知道在这种状态我:http://www.somethingofthatilk.com/ index.php?id = 150 – user366121 2011-03-09 09:52:09

+0

您是否检查过:config以验证您的pref是否已设置? – Neil 2011-03-12 00:36:18

回答