我为Firefox Extension提供了一个简单的首选项窗格,如下所示:
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<prefwindow title="Preferences"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<preferences>
<preference id="extensions.autofc.signalSuccess" name="extensions.autofc.signalSuccess" type="bool"/>
<preference id="extensions.autofc.dpair" name="extensions.autofc.dpair" type="string"/>
</preferences>
<prefpane label="Preferences">
<checkbox preference="extensions.autofc.signalSuccess" label="Tell me if everything is okay"/>
<label value="NOTE: Errors are always alerted"/>
<html:hr />
<hbox align="center">
<label value="Pair Options" />
<groupbox>
<radiogroup preference="extensions.autofc.dpair">
<radio label="Pair 1" value="ee"/>
<radio label="Pair 2" value="ev"/>
</radiogroup>
</groupbox>
</hbox>
</prefpane>
</prefwindow>
这在Linux上非常有效,这意味着用户可以勾选或取消选中复选框或选择单选按钮,单击“确定”,再次打开“首选项”时,将保存最新的选项。
令我感到惊讶的是,当在Windows上测试时,不会保存选择,即,再次打开“首选项”窗格时,选择将返回到默认值。
我认为有一件事是这个偏好窗格中的选择是由Firefox处理的,但我可能错了。
你们对于为什么这在Windows上不起作用有任何见解吗?特别是,它在Windows 7上的FF 3.6.1,FF 8,FF 7.0.1上不起作用。
答案 0 :(得分:2)
您应该将<preferences>
放在<prefpane>
内,而不是<prefwindow>
。