【问题标题】:Windows Phone PhoneGap app back button issueWindows Phone PhoneGap 应用程序后退按钮问题
【发布时间】:2013-07-19 09:19:25
【问题描述】:

我正在开发 Windows Phone PhoneGap 应用程序。当点击硬件返回按钮时,它会使用 history.go(-1) 转到上一页;但是当我在初始页面并单击后退按钮时,它正在导航到同一页面而不是杀死应用程序。任何帮助表示赞赏。

【问题讨论】:

    标签: c# javascript css cordova windows-phone


    【解决方案1】:

    要配置后退按钮,您可以使用以下功能:

    // for exit app
    navigator.app.exitApp();
    
    // for back hsitory use
    navigator.app.backHistory()
    

    完整代码:

    document.addEventListener("deviceready", onDeviceReady, false);
    
    function onDeviceReady(){
        document.addEventListener("backbutton", function(e){
           if($.mobile.activePage.is('#home')){
               e.preventDefault();
               navigator.app.exitApp();
           }
           else {
               navigator.app.backHistory()
           }
        }, false);
    }
    

    【讨论】:

    • 此代码适用于 windows phone 7。但是,在 windows phone 8 中,出现错误“无法获取未定义或空引用的属性 'exitApp'”。你能建议我如何解决这个问题吗?
    • 我也面临同样的问题,此代码在 Windows Phone 8 中不起作用。请有人帮忙
    • 哦,对不起,Windows 8 可能需要额外的配置 :),但我从不在 Windows 8 应用程序中使用:D
    【解决方案2】:

    以上答案可能适用于 windows phone 7,但不适用于 windows phone 8.1。对于 windows phone 8.1 中的覆盖后退按钮,我们可以使用WinJS api。

    在设备就绪时绑定返回按钮事件。

    document.addEventListener('deviceready', onDeviceReady, false);
    function onDeviceReady(){
       //check if WinJS api is available or not
       if(WinJS){
          WinJS.Application.onbackclick = function (e) {
             //write your code here
             return true; // you must return true otherwise it will close app.
         }
       }
    }   
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多