2014-12-19 127 views
0

導航回到我的時候onloadingstatechanged不火有一個網頁在我的winjs的應用程序,並在準備我的功能分配給onloadingstatechanged事件在頁面的列表視圖的功能。然後我檢查時是compelte等等等等如常。從另一個頁面

 var buttonsListView = document.querySelector(".buttons-container .itemslist").winControl; 

     buttonsListView.onloadingstatechanged = function (args) { 
      if (args.srcElement === buttonsListView.element && buttonsListView.loadingState === "complete") { 

       //MY CODE HERE 

       buttonsListView.onloadingstatechanged = null; 
      } 
     }.bind(this); 

下面是HTML:

  <div class="buttons-container"> 
       <div class="buttonTemplate" data-win-control="WinJS.Binding.Template"> 
        <button data-win-control="WinJS.UI.AppBarCommand" data-win-options="{icon:'', type:'button'}" data-win-bind="winControl.label: buttonName; winControl.icon: icon"></button> 
       </div> 
       <div class="itemslist win-selectionstylefilled" data-win-control="WinJS.UI.ListView" data-win-options="{ 
         layout: {type: WinJS.UI.GridLayout}, 
         selectionMode: 'none', 
         itemTemplate: select('.buttons-container .buttonTemplate'), 
         itemDataSource: null, 
         oniteminvoked: RapportPage.buttonNavigate 
        }"> 
       </div> 
      </div> 

我的問題是,如果我導航到另一個頁面,然後按返回鍵,就緒事件被炒魷魚,但onloadingstatechanged不會永遠不會發生。

回答

0

我發現這個問題。

參考按類列表視圖.itemslist這是行不通的。事情的工作方式不同的,當你從另一個頁面回來,當您直接navigete頁面的反對,到ListView。

所以我只是分配一個ID給ListView格,然後加載DOM對象是這樣,而不是:

var buttonsListView = document.querySelector("#buttonList").winControl; 
相關問題