[jQuery Mobile] 按鈕切換頁面 href 與 data-ref='back' 使用心得

  • 8617
  • 0

摘要:[jQuery Mobile] 按鈕切換頁面 href 與 data-ref='back' 使用心得

開發 jQuery Mobile App 時,通常會需要做一些切換上下頁的按鈕,簡單的方式就是給定某頁 page 的 id,然後讓 按鈕的 href 連結到該 id

<a class="ui-btn ui-btn-left" href="#P2">下一頁</a>

jQuery Mobile 本身也提供一個屬性 data-ref=’back’,用來設定回到上一頁,省去額外設定 id ,href 連結,只要在該按鈕上設定 data-ref=’back’ 即可完成效果

<a class="ui-btn ui-btn-left" data-rel="back">回前頁</a>

雖然可以省下一點功夫,但是,使用上也是有些地方要注意。

 

舉例來說,假設有 P1、P2、P3 三個頁面,P1 頁面有下一頁按鈕 ( 預期是切換到 P2 ),P2 頁面有回前頁按鈕 ( 預期是回到 P1 ) ,與下一頁按鈕 ( 預期是切換到 P3 ) ,P3 頁面有回前頁按鈕 ( 預期是回到 P2 ),當我們一路從 P1 到 P2 再到 P3,在 P3 頁面按下按鈕回到 P2 後,若 P2 的上一頁是使用 data-ref=’back’,這時按下 P2 回前頁按鈕,就會回到 P3,而不是預期的 P1,造成畫面跳轉上的失誤。

 

測試範例如下 (進入後,按下 Preview ):

http://jqmdesigner.appspot.com/designer.html#&ref=5399806579048448

 

因此,除非真的確定會回到預期的頁面 ( 例如彈出 Dialog 頁面的取消按鈕),建議還是使用 href 會比較妥當。