2

我试图开发一个像自动填充表单这样的扩展。它看起来很简单,但是在实现时我被卡住了。我们如何存储永久创建的配置文件的数据。我尝试在 javaScript 中使用 localStorage 来保存数据,但它是临时的。任何指导都会非常有用。只要告诉我我到达目的地的方式

function count()
{
 var inputs = $("input:text").length;
    alert("inputs are = "+inputs);

 var cnt = document.forms.length;

 alert(cnt);

 for (var a=0;a<document.forms.length;a++)
 {
  var x=0;
  var elem = document.forms[a].elements;
     for (x=0;x<document.forms[a].elements.length;x++)
  {
   //elem[x].value="Hello";
   if(x==0)
   {
    localStorage.setItem('userName', elem[x].value);    
   }
  }
  alert("Your user is: " + localStorage.getItem('userName'));
 }

}
4

1 回答 1

0

使用 Preferences 服务将数据存储在用户的配置文件中。例如:

var prefService = Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefService);
var prefs = prefService.getBranch("extensions.YOUREXTENSIONABBREVIATION.");

//elem[x].value = "Hello";
if (x==0) {
   prefs.setCharPref('userName', elem[x].value);
   prefService.savePrefFile(null);  
}
alert("Your user is: " + prefs.getCharPref('userName'));

有关更多信息,请查看此处:

https://developer.mozilla.org/en-US/docs/Adding_preferences_to_an_extension

在扩展的“defaults/preferences”文件夹中包含一个“defaults.js”文件。初始化您将存储在首选项文件中的每个项目,以防您尝试在它存在之前检索它。

于 2013-02-23T07:39:23.680 回答