2014-10-23 3 views
1

Я не могу понять, как программно скрыть или показать настройку.Программно скрывать простой префикс

Я попытался это:

function onSwitchChange(prefName) { 
    var ms = require("sdk/simple-prefs").prefs.option1; 
    if(ms == "S"){ 
    require("sdk/simple-prefs").prefs.option2.hidden = false; 
    }else{ 
    require("sdk/simple-prefs").prefs.option2.hidden = true; 
    } 
} 
require("sdk/simple-prefs").on("option1", onSwitchChange); 

ответ

1

вам нужно, чтобы дать вашему прив атрибут oninputchanged.

посмотреть здесь: MDN :: Inline Options - Setting element changed notifications

это выглядит, как вы используете Firefox-аддон-SDK так после того, как вы сделаете свой аддон к XPI. переименуйте xpi в zip и извлеките его. затем отредактируйте options.xul, затем заново запишите файлы, а затем переименуйте его в .xpi.

редактирование, которое нужно внести в options.xul, находится в setting элемент option2. то добавьте к этому:

<setting title="option1" type="string" pref="blahBlahBlah" oninputchanged="if (this.value == 'S') { document.querySelector('setting[title=\"option1\"]').style.display='none'; } else { document.querySelector('setting[title=\"option1\"]').style.display=''; } "> 
    option2 
</setting> 
+0

awesome спасибо! –

Смежные вопросы