2012-03-18 98 views
3

我想显示AppBar当一个页面片段负荷,但是这个代码就绪功能正在按预期运行不工作:如何在页面片段加载时显示WinJS AppBar?

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

如何显示AppBar页面片段加载时?

回答

0

我试过下面的代码:

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

而且它的工作原理是(显示在页面加载应用程序栏)的预期。

用同样的方法也可用于在MSDN示例: App bar sample

你好像有另一个问题(应用程序栏或别的东西上无效的控制)。

您能否提供更多详细信息或应用程序示例?

7

假设您正在HTML文件中正确创建appbar。

然后,在ready方法,应首先调用

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

根据MSDN documentationprocessAll函数“适用声明控制结合的所有元素,在指定根元素开始。” (即把所有html元素转换成WinJS控件)

0

如果你得到null错误,在初始化代码中调用WinJS.UI.processAll()。

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

HTML

<div id="appBar" data-win-control="WinJS.UI.AppBar" data-win-options="{placement:'bottom'}">