jQMobile の単一ページ AJAX ロードを使用しています。各ページは独自のファイルです。
必要に応じて、ページに HOME ボタンを動的に作成します。今日は、"index.html" を指す <A> タグを使用するだけです。Web アプリの jQueryMobile の履歴をチェックして、index.html ページが読み込まれた履歴の中で最初の時間を見つけ、window.history.back(-##); を呼び出す方法はありますか? 履歴とナビゲーションに追加するだけでなく、ページに追加します。
コードは、履歴に index.html がない場合、window.location.href だけでページに移動するようなものになります。
function
GoHome()
{
/* This is a function I don't know even exists, but it would find the first occurrence of index.html */
var togo = $mobile.urlHistory.find( 'index.html' )
var toback = $mobile.urlHistory.length -1 - togo;
if ( togo >= 0 )
window.history.back( -1 * toback )
else
$.mobile.changePage( '/index.html' )
}
履歴が index.html => profile.html => photos.html の場合 $.mobile.urlHistory.find('index.html') のマジック関数は 0 を返し、履歴の長さは 3 になるので、私の計算ではindex.html ページに戻るには、window.history.back( -2 ) に移動します。その検索関数が -1 を返した場合、それは見つからず、changepage 呼び出しを行うだけです。
ありがとう/アンディ