2017-04-06 24 views
1

$.mobile.changePage()メソッドを使用してjQuery Mobileサイトの1ページから2ページに移動します。ページ1とページ2の両方が画面より大きくなりますが、ページ1は長い項目のリストよりもはるかに長いですが、Page 1 Page 1です。ユーザーがアイテムをタップすると、ページ2のコンテンツをajax経由で読み込み、そのコンテンツを本文に追加してから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要素に格納し、ユーザーがページに戻るときに垂直スクロール位置を復元します。こうすることで、ユーザーはいつもページの先頭にスクロールするのではなく、途中で止めてしまうことになります。

関連する問題