2012-09-12 66 views
2

我在頁面一些錨和當我加載頁面使用錨:如何禁用jQuery Mobile滾動到頁面頂部?

http://localhost:1820/Home/FAQ#question4 

jQuery的移動後1-3秒自動滾動到的頁面的頂部。我無法將修正添加到$(document).ready(),因爲此事件在滾動之前觸發(所有內容加載後都會出現滾動 - 帶有其他社交按鈕圖像,腳本等)。

當我刪除jquery.mobile-1.1.1.js腳本 - 錯誤消失。 當我刪除除jQuery和jQuery手機之外的所有腳本 - bug仍然存在。所以問題應該在jQuery Mobile腳本中。

我該如何解決問題?

我用Chrome和Opera來測試它。

P.S.我設置了$.mobile.ajaxEnabled = false;,所以我的網站不使用Ajax來加載頁面。

回答

1

jQueryMobile默認使用'#'字符來表示頁面而不是錨點(請參見documentation中的「在多頁文檔中進行鏈接」一節)。

嘗試將rel="external"data-ajax="false"添加到頁面的鏈接中,如文檔中所述。

+0

即使我直接輸入URL地址到我的瀏覽器導航欄,而不使用鏈接,也會出現此錯誤。 – leavelllusion

+0

您需要將ID爲「question4」的''div'加入'data-role =「page」',您想要使用URL顯示。 – Pablo

1
$.mobile.silentScroll() 

可以是一個解決您的problems.You能趕上在頁面加載的哈希部分,並用它來自動滾動到款,你需要把你的頁面。我最近回答了一個類似的問題。看看它是否有幫助 jQuery Mobile Tabs and Anchors