目前,我遇到了历史记录问题。背部 ()。
我有2页,分别是pageA.html,pageB.html。
我正在使用以下代码转到下一页并返回上一页
// go to next page
function changePage(url) {
$.mobile.pageContainer.pagecontainer("change", url, {
allowSamePageTransition: true,
transition: 'none',
showLoadMsg: false,
reloadPage: false,
changeHash: true
})
}
//back to previous page
function backToPreviousPage(){
alert("back");
history.back();
}
代码首次正常运行,如下所示
第一次:pageA> pageB(单击返回按钮一次)> pageA
所以我已经成功地回到了pageA。问题来了。
第二次:pageA> pageB(先单击后退按钮无响应,然后第二次单击)> pageA
到第三次时,我需要单击后退按钮3次,然后才能使history.back()工作,我可以获得警报消息,因此调用了backToPrevious函数。
所以问题如下:
1st导航:pageA> pageB> pageA(1单击)
第2次导航:pageA> pageB> pageA(2次点击)
第3次导航:pageA> pageB> pageA(3次点击)
等等....
我不仅可以在backToPrevious函数中硬编码导航回pageA,因为我不仅可以从pageA导航到pageB,而且可以从其他页面导航到pageB。
到目前为止,我已经尝试过
history.back(-1);
和这个
<a data-rel="back" href="javascript:history.back(1)" data-theme="a">Back</a>
但仍然无法解决问题。
欣赏是否有人可以告诉我我在做什么错。
谢谢。
最佳答案
只需使用此代码。
function changePage() {
$.mobile.changePage("pageA.html");
return false;
}
function backToPreviousPage(){
navigator.app.backHistory();
}