2017-04-06 72 views
1

我使用$.mobile.changePage()方法在我的jQuery Mobile站點中從第1頁導航到第2頁。第1頁和第2頁均大於屏幕,儘管第1頁比第1頁長得多。當用戶點擊一個項目時,我通過ajax加載第2頁的內容,將該內容附加到主體,然後使用changePage()轉換到第2頁。jQuery Mobile:頁面滾動後向下滾動

如果用戶向下滾動頁面1上的列表,然後轉換到頁面2,則窗口在頁面2上向下滾動一個可變量。我會補充說,頁面2上滾動的距離似乎與距離有關用戶以前在第1頁滾動。

我試過使用$.mobile.silentScroll(0);$('body').scrollTop('0');但我沒有取得任何成功。

我該如何去防止更改頁方法,從第2頁

回答

1

我以前遇到過同樣的問題上向下滾動。你可以做的就是創建一個被調用時,有一個頁面變化的事件處理程序,並有功能滾動到頁面的頂部:

$.mobile.pageContainer.on("pagecontainerchange", function(event, ui) { 
    $(document).scrollTop(0); 
}); 

關鍵的區別就在這裏被執行的document.scrollTop(),而不是body

在我的代碼中,我使這個小例子更復雜一些。我記錄每個頁面的垂直滾動位置,將其存儲在頁面DOM元素上,並在用戶返回頁面時恢復垂直滾動位置。這樣用戶總是返回到他們離開的地方,而不是總是滾動到頁面的頂部。

相關問題