Чтобы архивировать тот же результат создания виджетов декларативно в вашем вопросе, вы можете использовать следующий код JavaScript для их программного создания.
var tabBar = new dojox.mobile.TabBar({barType : "segmentedControl"}, node1);
var button1 = new dojox.mobile.TabBarButton({icon1 : "", icon2 : ""}, node2);
var button2 = ...;
var button3 = ...;
tabBar.addChild(button1);
tabBar.addChild(button2);
tabBar.startup();
Таким образом, правила преобразования декларативного создания в программное создание могут быть простыми. Используйте new
, чтобы создать новый экземпляр класса dijit и указать два параметра. Первый параметр - это объект JavaScript, содержащий свойства для запуска виджета, взятые из атрибутов DOM в декларативном синтаксисе. Второй параметр - это узел DOM, связанный с виджетом.
Виджеты типа dojox.mobile.TabBar
являются контейнерными виджетами, которые могут содержать другие виджеты. Эти виджеты наследуются от dijit._Container
и могут использовать функцию addChild
для добавления дочерних виджетов.
Не забудьте использовать startup
для запуска виджета контейнера. Эта функция сообщает контейнеру, что вы завершили работу с контейнером и его дочерними элементами. Контейнерный виджет обычно выполняет некоторую работу по изменению размера в функции startup
. startup
вызывается автоматически при декларативном создании.