2013-07-23 70 views
0

當我初始化一個頁面並嘗試導航時,頁面第一次回退。爲什麼頁面退後。JQuery移動更改頁面第一次後退

我嘗試用這種方式來導航:$.mobile.changePage("#pagename");

例如。我嘗試從初始化後的主頁面轉到客戶頁面,點擊圖標。當導航完成頁面導航時,網頁將導航,但僅在第一次時,url仍爲#...

代碼:

<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
     <link rel="stylesheet" href="styles/jquery.mobile-1.3.1.min.css" /> 
    </head> 

    <body> 

     <!-- ////////////////////////////////////////////////////// 
     //////////   MAIN PAGE   /////////////// 
     ////////////////////////////////////////////////////// --> 
     <section id="main-page" data-role="page" data-fullscreen="true"> 
      <header data-role="header"> 
       <h1>Főoldal</h1> 
      </header> 
      <div data-role="content"> 
       <table> 
        <tbody> 
         <tr> 
          <td> 
          <div class="metro-bt" onclick="$.mobile.changePage('#customer-page');" id="customer-btn"> <!-- <<<-------------- here I invoke the function change page and than change back, but just at the first time --> 
           <div></div> 
           <span>Customers</span> 
          </div></td> 
          <td> 
          <div class="metro-bt" data-bind="click: bt_calendar_click" id="calendar-btn"> 
           <div></div> 
           <span>Calendar</span> 
          </div></td> 
         </tr> 
         <tr> 
          <td> 
          <div class="metro-bt" data-bind="click: bt_negotiation_click, enable:isNegBtEnable" id="negotiation-btn"> 
           <div></div> 
           <span>Negotiation</span> 
           <span data-bind="text: durationOfNegotiation" style="line-height: 0; display: block;"></span> 
           <span data-bind="text: nameOfPartner" style="line-height: 15px;clear: both; display: block;">asdf</span> 
          </div></td> 
          <td> 
          <div class="metro-bt" data-bind="click: bt_logout_click " id="logout-btn"> 
           <div></div> 
           <span>Logout</span> 
          </div></td> 
         </tr> 
        </tbody> 
       </table> 

      </div> 
     </section> 

     <!-- ////////////////////////////////////////////////////// 
     //////////   Customer   /////////////// 
     ////////////////////////////////////////////////////// --> 

     <section id="customer-page" data-role="page" data-fullscreen="true"> 
      <header data-role="header"> 
       <h1>Ügyféltörzs</h1> 
       <a data-role="button" href="#main-page" data-icon="back" data-iconpos="notext" class="ui-btn-left"></a> 
      </header> 
      <div class="content" data-role="content"> 
       <div data-enhance="false" data-bind="event: { rowselect: rowselect }" id="customer-jqxGrid" style="margin: 0 auto"></div> 
      </div> 

      <div data-role="footer" data-position="fixed" data-tap-toggle="false"> 
       <a href="#add_customer-page" data-icon="plus"> Hozzáad </a> 
       <a id="b-customer-negotation" class = "ui-disabled" data-icon="star" data-bind="click: startNegotiation"> </a> 
       <a id="b-customer-modify" class = "ui-disabled" data-icon="edit" data-bind="click: modify"></a> 
      </div> 
     </section> 



     <link rel="stylesheet" href="styles/jqx.base.css" type="text/css" /> 
     <link rel="stylesheet" href="styles/main.css" type="text/css" /> 

     <script type="text/javascript" src="scripts/lib/jquery-1.9.1.min.js"></script> 
     <script src="scripts/lib/knockout-2.2.1.js"></script> 


     <script src="scripts/lib/jquery.mobile-1.3.1.min.js"></script> 



     <script type="text/javascript"> 
      g_loginViewModel = null; 
      m_tokenKey = "token"; 
      m_serverName = "http://localhost:49670"; 

      $(function() { 
       $.mobile.ignoreContentEnabled = true; 
       if (window.localStorage.getItem(m_tokenKey) != null) { 
        $.mobile.changePage("#main-page"); 
        // bootstrap(); 
       } else { 
        g_loginViewModel = new LoginViewModel(); 
        ko.applyBindings(g_loginViewModel, document.getElementById("login-page")); 
       } 
      }); 

     </script> 
    </body> 
</html> 
+0

您是否找到解決方案,因爲我有同樣的問題。 :( – AtLeT

+0

所以我解決了這個問題,我設置了$ .mobile.autoInitialize = false;而不是$ .mobile.initializePage();但是這個函數導致了麻煩,所以我刪除了$ .mobile.initializePage();並將autoInitialize設置爲true(默認選項) 這對我有用,但對於你的代碼我不知道... – AtLeT

回答

0

請張貼在撥弄,還有你是什麼網頁步驟回來呢?我想你不需要指定第一頁作爲改變頁面,它應該直接加載數據角色頁面的第一頁。

相關問題