我正在尝试使用jquery mobile的api在我的android上创建一个移动应用程序。当我尝试将某些内容链接到另一个页面时,我点击了android后退按钮,显示另一个页面,而不是我所在的原始页面。
<div data-role="page" id='home'>
<div data-role="content">
<a href='#next_page'>Next Page</a>
</div>
</div>
<div data-role="page" id='next_page'>
<div data-role="content">
Content
</div>
</div>
<div data-role="page" id='wrong_page'>
<div data-role="content">
Content
</div>
</div>
所以,如果我在主页,我点击链接“下一页”,我转到next_page,但是当我点击android设备上的后退按钮时,出现了错误的页面。知道为什么会这样吗?
谢谢!
答案 0 :(得分:0)
可能您的HTML代码语法有问题。你可以尝试:
使用jqm自动生成后退按钮,请参阅“后退”按钮链接here
使用backbutton的特定API并对您想要的功能进行硬编码。
答案 1 :(得分:0)
如果您对网页使用不同的HTML文件,请在代码上使用data-rel =“back”而不是“#(tagID)
”,这将转到上一页。
否则,如果您在同一HTML文件中使用DIV进行分页。在你的.js文件中使用“.hide”来隐藏div,除了你要显示的那个,就像这样
$("#1stdiv").hide();
$("#2stdiv").hide();
$("#3stdiv").hide();
$("#4stdiv").show();
$("#5thdiv").hide();
要在backpage历史记录中进行操作,请在进入页面后立即实现堆栈并将页面弹出到堆栈中,然后在backbutton onclick上编写 onclick 函数,该函数应显示堆栈中的顶部元素。 像这样
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady(){
document.addEventListener("backbutton", onBackKeyDown, false);
}
function onBackKeyDown(){
//hide all div except the div which is in top of stack
}
但是,当您在phonegap中使用时,请确保在HTML文件中添加<script src="cordova.js"></script>
或<script src="phonegap.js"></script>
。