Как показать панель приложений WinJS при загрузке фрагмента страницы? - PullRequest
3 голосов
/ 18 марта 2012

Я хотел бы показать панель приложений при загрузке фрагмента страницы, но этот код, выполняющийся в функции готовности, не работает должным образом:

function ready(element, options) {
    var appBar = document.getElementById("appBar").winControl;
    appBar.disabled = false;
    appBar.show();
}

Как отобразить панель приложений, когда страницафрагмент загружается?

Ответы [ 3 ]

7 голосов
/ 20 марта 2012

Предполагается, что вы правильно создаете панель приложения в файле HTML.

Затем в методе ready сначала необходимо вызвать

WinJS.UI.processAll(elements)
        .then(function () {
              var appbar = document.getElementById("appBar");
              if (appbar) {
                  appbar.winControl.show();
              }
         });

. В соответствии с документацией MSDN , processAll функция "применяет декларативную привязку управления ко всемэлементы, начиная с указанного корневого элемента. "(то есть превращение всего элемента html в элементы управления WinJS)

0 голосов
/ 16 апреля 2015

Если вы получили нулевую ошибку, вызовите WinJS.UI.processAll () в вашем коде инициализации.

WinJS.UI.processAll();
appBar.winControl.show();

HTML

<div id="appBar" data-win-control="WinJS.UI.AppBar" data-win-options="{placement:'bottom'}">
0 голосов
/ 20 марта 2012

Я попробовал следующий фрагмент кода:

document.getElementById("appBar").winControl.show()

И он работает как положено (панель приложения отображается при загрузке страницы).

Точно так же, как и наПример msdn: Пример панели приложения

Кажется, у вас есть другая проблема (недопустимые элементы управления на панели приложения или что-то еще).

Не могли бы вы предоставить более подробную информацию или дажеПример приложения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...