2012-12-05 180 views
1

jQuery Mobile的後退按鈕我有一個JQM頁面導航欄:與導航欄

<div data-role="navbar"> 
    <ul> 
     <li><a href="#about" class="ui-btn-active ui-state-persist">About</a></li> 
     <li><a href="#details">Details</a></li> 
    </ul> 
</div> 

兩個頁面都具有相同的navbar

我有後退按鈕如下:

<a href="#" data-icon="back" data-rel="back" >Back</a> 

的問題是後退按鈕不會去到前一個頁面查看的頁面之前,#details和#about頁面都包含在歷史上。如何忽略或排除這兩個頁面,以便點擊返回按鈕將轉到首先加載它的頁面。

回答

0

你不能因爲 「數據相對=回」 使用瀏覽器歷史記錄,因此:

  1. 開始與 「主」
  2. 點擊 「關於」
  3. 點擊 「詳細信息」
  4. 點擊「關於」
  5. 點擊「返回」 - 可返回到「詳細信息」
  6. 點擊「後退」 - 返回到「關於」
  7. 單擊「返回」 - 返回到「主」,嗚呼!

我建議你在「About」和「Details」頁面上刪除navbars,這樣你只有一條路:回到你調用它的頁面。

0

要做到這一點最簡單的方法是讓你的關於和詳細頁面jquery移動對話框頁面(見documentation)。

<a href="foo.html" data-rel="dialog">Open dialog</a> 

對話框頁面沒有在歷史中跟蹤,這應該實現您正在尋找的目標。

0

嘗試這種解決方案:

<script> 
$('#about').click(function(){ 
    $('#contentDiv').html('Your content'); 
}); 
$('#details').click(function(){ 
    $('#contentDiv').html('Your content'); 
}); 
</script> 
<body> 
<div data-role="page" id="main"> 
    <div id="contentDiv" data-role="content"> 
    </div> 
    <div data-role="navbar"> 
     <ul> 
      <li><a id="about" class="ui-btn-active ui-state-persist">About</a></li> 
      <li><a id="details">Details</a></li> 
     </ul> 
    </div> 
</div> 
</body> 

當使用此解決方案,將確保當你點擊後退按鈕,你去到前一頁。