Google Closure: Как да задам Visible на елемент

Докато изобразявам страницата за първи път, създавам лента с инструменти, използвайки goog.ui.Toolbar. По-късно добавям някои бутони към него. Също така крия няколко бутона.

this.mainToolbar = new components.ui.Toolbar();
this.addChild(this.mainToolbar);

var mlSelectBtn = new components.ui.ToolbarButton(content);
mlSelectBtn.setId("select");
this.mainToolbar.addChild(mlSelectBtn, true); 

var mlUnSelectBtn = new components.ui.ToolbarButton(content);
mlUnSelectBtn.setId("unselect");
this.mainToolbar.addChild(mlUnSelectBtn, true); 
mlUnSelectBtn.setVisible(false);

Сега, когато щракна върху няколко други бутона в моето приложение, искам да скрия бутона за избор и да покажа бутона за премахване на избора. Опитвам се да направя това

var temp = document.querySelector("[id=unselect]");
temp.setVisible(true);

Получавам грешка, че setVisible не е функция. Как да настроя видимото обратно на true?


person rk8785    schedule 06.08.2015    source източник
comment
Съжалявам за този глупав въпрос, но разбрах, че имам препратка към mainToolbar.   -  person rk8785    schedule 07.08.2015


Отговори (1)


Резултатът от метода querySelector е DOM елемент, но за да извикате setVisible се нуждаете от препратка към ToolbarButton (mlUnSelectBtn, по-горе). Ще трябва да съхраните препратка към mlUnSelectBtn някъде, която може да бъде достъпна от кода, който нулира видимостта.

person Derek Slager    schedule 06.08.2015