2

ページにいくつかのアンカーがあり、アンカーを使用してページをロードすると:

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

jQuery Mobile は、1 ~ 3 秒後に自動的にページの上部にスクロールします。$(document).ready()このイベントはスクロールする前に発生するため、修正を追加できません(すべてのコンテンツが読み込まれた後にスクロールが表示されます - 追加のソーシャル ボタン イメージ、スクリプトなど)。

jquery.mobile-1.1.1.js スクリプトを削除すると、バグが消えます。jQuery と jQuery mobile を除くすべてのスクリプトを削除しても、まだバグが存在します。したがって、問題は jQuery Mobile スクリプトにあるはずです。

どうすれば問題を解決できますか?

Chrome と Opera を使用してテストしました。

PS私は設定$.mobile.ajaxEnabled = false;したので、私のサイトはAjaxを使用してページをロードしません。

4

2 に答える 2

1
$.mobile.silentScroll()

問題の解決策になる可能性があります。ページの読み込み時にハッシュセクションをキャッチし、それを使用して、ページを移動する必要のあるセクションに自動的にスクロールできます。私は最近同様の質問に答えました。jQueryMobileのタブとアンカーに役立つかどうかを確認してください

于 2012-09-13T00:02:00.033 に答える
1

jQueryMobile はデフォルトで、アンカーではなくページを示すために「#」文字を使用します (ドキュメントのセクション「複数ページ ドキュメント内でのリンク」を参照してください)

ドキュメントに記載されているように、ページへのリンクにrel="external"またはを追加してみてください。data-ajax="false"

于 2012-09-12T13:37:58.507 に答える