我正在使用 jQMobile 的单页 AJAX 加载。每个页面都是它自己的文件。
当我需要时,我会在我的页面上动态创建一个 HOME 按钮。今天我只使用了一个指向“index.html”的<A>标签。有什么方法可以检查我的网络应用程序 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,所以我的计算是到 window.history.back( -2 ) 返回 index.html 页面。如果该 find 函数返回 -1 则未找到,我将只进行 changepage 调用。
谢谢/安迪