2012-01-27 74 views
2

之間轉換時,我有兩頁,index.html,然後testpage.html我的html頁面

testpage.html由兩個頁面元素foo和它們之間的鏈接欄設置基本URL jQuery的鏈接怎麼辦。

我使用ajax調用從index.html過渡到testpage.html。問題是testpage.html上的鏈接正在使用index.html作爲基礎url。所以,當我試圖從#foo去#bar我趕上pagechangefail

$(document).bind("pagechangefailed", function(event, data){ 
      alert('failed change ' + data.toPage); 

     }); 

這提醒「未能改變http://domain.com/mobile/index.html#bar

的問題顯然是#bar不上的index.html存在,但在testpage.html上存在。我不明白爲什麼鏈接試圖鏈接回原始頁面。我如何手動設置鏈接或嘗試以某種方式手動覆蓋?我試過類似

$.mobile.changePage('testpage.html#bar'); 

但沒有運氣。

回答

0

我覺得JQM認爲這是「深層鏈接」,但我看這不是你要完成

請注意什麼:由於我們使用哈希來跟蹤所有Ajax頁面的導航歷史記錄,目前不可能在jQuery Mobile的頁面上深入 鏈接到頁面上的主播(index.html#foo), ,因爲fram ework將查找ID爲#foo 的「頁面」,而不是滾動到具有該 ID的內容的本機行爲。

我認爲(但沒有試過),你需要使用$.mobile.loadPage('testpage.html')加載頁面到DOM,然後再使用$.mobile.changePage('#bar')過渡。

更多,在這裏:

而且我見過使用目標屬性,但不知道這會工作使用$.mobile.changePage()