1

jQueryMobileアプリを持っています。この例では、Movies(index.html-#moviesPage)とProfile(profile.html-#profilePage)の2つのページを使用しています。これらは両方とも、の私のナビゲーションバーにリンクされていdata-role="footer" divます。

profile.htmlナビゲーションバーは、最初に(コンテンツとデータをロードしてキャッシュするために)リンクし、次に最初にアクセスした後にリンクする必要があるよう#profilePageです。さらに、ページに戻ったときに、ui-btn-activeクラスがナビゲーションボタンに表示されません。#moviesPageこのデュアルリンクの必要性に対する簡単な解決策はありますか、それともページに最初にアクセスした後でリンクを変更するためにJavaScriptを作成する必要がありますか?デュアルリンクも必要ですか、それともjQuery Mobileにリンクをprofile.htmlそのままにして、キャッシュされたコンテンツをロードするためにすでにアクセスされているかどうかを知る方法はありますか?

私が始めた考えられる解決策の1つは、ページにアクセスした後、ナビゲーションバーのリンクがからに変更されたsessionStorage.profilePage = 'visited'場合です。私はまた、問題を処理するために以下をまとめました。visitedprofile.html#profilePageui-btn-active

var activePage = $('div[data-role*="page"]').attr("id");

if (activePage == "moviesPage") {
  //Add class="ui-btn-active" to #moviesLink
}

これは、ここでの私の元の質問に対するフォローアップの質問です:jQuery Mobile:ページに戻ったときに動的コンテンツがロードされない

これについての追加の考えや洞察をありがとうございます。-マーク

4

0 に答える 0