2012-03-18 8 views
3

私は期待通りにページ断片の負荷が、レディ機能で実行して、このコードが動作していないときにアプリケーションバーを表示したい:ページフラグメントが読み込まれたときにWinJS AppBarを表示するには?

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

はどのようにしてたときにページ断片の負荷アプリケーションバーを表示していますか?

答えて

0

私は、次のコードを試みた:(アプリバーは、ページの読み込みに表示されます)

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

をそして期待どおりに動作します。

MSDNのサンプルでもを使用したのと同じ方法: App bar sample

あなたが別の問題(アプリバーまたは何か他のもので無効なコントロールを)持っているようです。

詳細やアプリサンプルを提供してください。

7

HTMLファイルに正しくappbarを作成しているとします。

その後、ready方法では、あなたが最初にMSDN documentationによる

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

を呼び出す必要があり、processAll機能は、「指定されたルート要素で始まる、すべての要素に結合する宣言型の制御を適用します。」 (すなわち、すべての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'}"> 
関連する問題