Javascript 在phonegap中的2个html页面之间导航

Javascript 在phonegap中的2个html页面之间导航,javascript,jquery,css,html,cordova,Javascript,Jquery,Css,Html,Cordova,我正在开发phonegap应用程序。 我面临一个问题 我的应用程序中有四个html页面。 每个页面都包含一些小部件,如按钮或列表视图 点击按钮,我进入下一页。但是当我想回到第一页的时候,我不能。 也就是说,当我尝试使用设备的“后退”按钮返回时,它会关闭应用程序 我使用的是设备的后退按钮,不是用户定义的,所以我需要处理这个问题。 与onBackPressed()相同在android中 我知道这是因为WebView小部件。但无法找到解决办法 我不熟悉JavaScript、CSS、AJAX、jQuer

我正在开发phonegap应用程序。 我面临一个问题

我的应用程序中有四个html页面。 每个页面都包含一些小部件,如按钮或列表视图 点击按钮,我进入下一页。但是当我想回到第一页的时候,我不能。 也就是说,当我尝试使用设备的“后退”按钮返回时,它会关闭应用程序

我使用的是设备的后退按钮,不是用户定义的,所以我需要处理这个问题。 与
onBackPressed()相同在android中

我知道这是因为WebView小部件。但无法找到解决办法

我不熟悉JavaScript、CSS、AJAX、jQuery和HTML5


如何处理phonegap中的反向按压

内置应用程序可能无法使用


请参阅相关SO答案:

可能无法使用
内置应用程序


请参阅相关SO答案:

您可以制定解决此问题的变通方法

您可以定义在按下“后退”按钮时触发的功能,然后验证用户所在的页面,并根据每个页面运行不同的操作。例如,如果他在第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;
        }
    }

文件。添加的监听器(“deviceready”,OnDeviceraddy,false);
//PhoneGap已加载,现在可以安全地调用PhoneGap方法
函数ondevicerady(){
//注册事件侦听器
document.addEventListener(“backbutton”,onBackKeyDown,false);
}
//按后退按钮
函数onBackKeyDown(){
var whichPage=functionToDetectCurrentPage();//创建一个函数或以某种方式检测它
开关(第页){
案例“第1页”:
//只能在安卓系统下工作,iOS不太确定,但听说这是不可能的
//按程序进行
navigator.app.exitApp();
打破
案例“第2页”:
window.location=“Page1.html”;
打破
案例“第3页”:
window.location=“Page2.html”;
打破
案例“第4页”:
window.location=“Page2.html”;
打破
}
}
看看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;
        }
    }

文件。添加的监听器(“deviceready”,OnDeviceraddy,false);
//PhoneGap已加载,现在可以安全地调用PhoneGap方法
函数ondevicerady(){
//注册事件侦听器
document.addEventListener(“backbutton”,onBackKeyDown,false);
}
//按后退按钮
函数onBackKeyDown(){
var whichPage=functionToDetectCurrentPage();//创建一个函数或以某种方式检测它
开关(第页){
案例“第1页”:
//只能在安卓系统下工作,iOS不太确定,但听说这是不可能的
//按程序进行
navigator.app.exitApp();
打破
案例“第2页”:
window.location=“Page1.html”;
打破
案例“第3页”:
window.location=“Page2.html”;
打破
案例“第4页”:
window.location=“Page2.html”;
打破
}
}
看看phonegap文档。

让我们知道它是否对您有帮助

您可以为此使用“backbutton”事件

语法:
document.addEventListener(“backbutton”,yourCallbackFunction,false)

你可以这样写你的“yourCallbackFunction”

function yourCallbackFunction(){
window.history.back();
}

文档链接

您可以为此使用“backbutton”事件

语法:
document.addEventListener(“backbutton”,yourCallbackFunction,false)

你可以这样写你的“yourCallbackFunction”

function yourCallbackFunction(){
window.history.back();
}


文档链接

这与您移动到下一页的方式相同,如果您可以阅读设备的“我在那里写的后退”按钮,请使用上一页id在当前页中添加按钮以返回。请在投票否决某人之前阅读,即使我知道我们从一页转到另一页也是一样的another@agrothe:谢谢你的帮助、支持和宝贵的时间。我会试试的。谢谢。这和你移动到下一页的方式相同,如果你能读到我写的设备的“后退”按钮,可以使用上一页id在当前页面中添加一个按钮返回。请在投票否决某人之前阅读,即使我知道我们从一页转到另一页也是一样的another@agrothe:谢谢你的帮助、支持和宝贵的时间。我会试试的。谢谢