我正在开发phonegap应用程序。 我面临一个问题。
我的应用程序中有四个 html 页面。 每个页面都包含一些小部件,例如按钮或列表视图 单击按钮后,我将转到下一页。但当我想回到第一页时我却做不到。 当我尝试使用设备的后退按钮返回时,它会关闭应用程序。
我使用的是设备的后退按钮,而不是用户定义的,所以我需要处理这个问题。 与 Android 中的
onBackPressed();
相同。
我知道这是因为 WebView 小部件。但无法找到解决方案。
我是 JavaScript、CSS、AJAX、jQuery 和 HTML5 的新手。
如何处理phonegap中的后按?
您可以制定解决方法来解决此问题。
您可以定义一个在按下后退按钮时触发的函数,然后验证您的用户位于哪个页面,并根据每个页面运行不同的操作。例如,如果他在第 3 页,则返回第 2 页,如果是第 2 页,则返回第 1 页,如果他在第 1 页,则可以关闭该应用程序。
给你写了一个例子:
<script type="text/javascript" charset="utf-8" src="phonegap-1.0.0.js"></script>
<script type="text/javascript" charset="utf-8">
document.addEventListener("deviceready", onDeviceReady, false);
// PhoneGap is loaded and it is now safe to make calls PhoneGap methods
function onDeviceReady() {
// Register the event listener
document.addEventListener("backbutton", onBackKeyDown, false);
}
// Handle the back button
function onBackKeyDown() {
var whichPage = functionToDetectCurrentPage(); //create a function or detect it somehow
switch(whichPage){
case "Page1":
//works only in android, iOS not quite sure, but heard it's not possible
//to do programatically
navigator.app.exitApp();
break;
case "Page2":
window.location = "Page1.html";
break;
case "Page3":
window.location = "Page2.html";
break;
case "Page4":
window.location = "Page2.html";
break;
}
}
查看phonegap文档。 http://docs.phonegap.com/en/1.0.0/phonegap_events_events.md.html#backbutton
让我们知道它是否对您有帮助!
您可以为此使用“后退按钮”事件。
语法:
document.addEventListener("backbutton", yourCallbackFunction, false);
你可以这样写你的“yourCallbackFunction”。
function yourCallbackFunction(){
window.history.back();
}