Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript:firefoxprefmanager_Javascript_Firefox Addon - Fatal编程技术网

Javascript:firefoxprefmanager

Javascript:firefoxprefmanager,javascript,firefox-addon,Javascript,Firefox Addon,我第一次尝试为Firefox编写扩展代码,但是prefmanager有问题 var prefManager = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch); var updateintervall = prefManager.getCharPref("extensions.traffic.updateintervall");

我第一次尝试为Firefox编写扩展代码,但是prefmanager有问题

var prefManager = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);
var updateintervall =   prefManager.getCharPref("extensions.traffic.updateintervall");

在第二行Javascript代码之后,我的扩展似乎停止了工作。以下代码行将不再被删除。。。我做错了什么?

当使用
get*()
函数时,
nsIPref*
API希望首选项已经存在。当尝试获取一个不支持的首选项时,将抛出异常。 此外,如果您试图将现有的数字首选项作为字符串读取,则API可能会抛出。 当然,您可以尝试/捕获异常

您可能希望添加到基于XUL的加载项中,以避免尝试/捕获不存在的pref

SDK用户应该查看和/或API


旁白:这些天你会想使用缓存来访问
nsIPref*

这已经有一段时间了,但这对我很有效。可能是对prefManager.getCharPref的调用引发了异常。在代码周围放一个try/catch,检查异常告诉您什么。