我希望在页面片段加载时显示AppBar,但是在ready函数中运行的此代码未能按预期工作:
function ready(element, options) {
var appBar = document.getElementById("appBar").winControl;
appBar.disabled = false;
appBar.show();
}
当页面片段加载时,如何显示AppBar?
我希望在页面片段加载时显示AppBar,但是在ready函数中运行的此代码未能按预期工作:
function ready(element, options) {
var appBar = document.getElementById("appBar").winControl;
appBar.disabled = false;
appBar.show();
}
ready
方法中,您应该先调用。WinJS.UI.processAll(elements)
.then(function () {
var appbar = document.getElementById("appBar");
if (appbar) {
appbar.winControl.show();
}
});
processAll
函数的作用是“从指定的根元素开始将声明性控件绑定应用于所有元素。”(即将所有html元素转换为WinJS控件)document.getElementById("appBar").winControl.show()
它按预期工作(应用栏在页面加载时显示)。
同样的方法也被用于MSDN示例: 应用栏示例
看起来你有另一个问题(应用栏上的无效控件或其他问题)。
你能否提供更多细节甚至是应用程序示例?
WinJS.UI.processAll();
appBar.winControl.show();
HTML
<div id="appBar" data-win-control="WinJS.UI.AppBar" data-win-options="{placement:'bottom'}">