Javascript 在jQuery mobile中是否可以返回到指定的页面id?
假设我有4个页面具有此页面ID: pageA->pageB->pageC->pageD 在Javascript 在jQuery mobile中是否可以返回到指定的页面id?,javascript,jquery,html,jquery-mobile,Javascript,Jquery,Html,Jquery Mobile,假设我有4个页面具有此页面ID: pageA->pageB->pageC->pageD 在pageC和pageD中可能会有一个事件使应用程序返回pageB,问题是根据我当前所在的页面,我应该调用history.go(-N)其中N是我应该返回的页面数。例如,如果我在pageD中,我应该调用history.go(-2),如果是pageChistory.go(-1),以保持历史一致。您将如何在jQuery Mobile中实现这一点,以便历史记录包含: pageA->pageB 另一种解决方案是直接使用
pageC
和pageD
中可能会有一个事件使应用程序返回pageB
,问题是根据我当前所在的页面,我应该调用history.go(-N)
其中N
是我应该返回的页面数。例如,如果我在pageD
中,我应该调用history.go(-2)
,如果是pageC
history.go(-1)
,以保持历史一致。您将如何在jQuery Mobile中实现这一点,以便历史记录包含:
pageA->pageB
另一种解决方案是直接使用$(“body”).pagecontainer(“change”,“pageB.html”)
导航到pageB
,问题是历史记录链会出现如下错误:
pageA->pageB->pageC->pageD->pageB
所有页面都有一个后退按钮,这就是为什么保持历史记录链的一致性很重要。您可以使用changeHash选项阻止jQM添加历史记录项:
您可以使用
$.mobile.activePage.attr('id')
来确定您所处的页面,然后在确定应该后退多少步后,您可以返回到所需的页面。让我知道这是否可行
您可能会发现它也很有用。但我希望能够返回,因为所有页面都有一个返回按钮。如果我理解正确,这将导致无法使用back功能。您可以有选择地使用它,仅用于您不希望在历史中进行的更改。也许我不明白你的问题?
$("body").pagecontainer("change", "pageB.html", {changeHash: false});