首页 文章

Phonegap Android后退按钮覆盖

提问于
浏览
0

在我的Phonegap应用程序中,使用 div 作为页面在单个 html 文件中创建,我重写后退按钮以退出应用程序,仅当作为主页的 div 可见时,否则隐藏其他人并显示主页 div . 我使用jQuery来附加事件处理程序 .

它在第一次应用程序启动时运行良好,但如果应用程序位于“历史记录”列表中,则覆盖不起作用,“返回”按钮退出应用程序而不检查哪些 div 可见 . 从“历史记录”列表中删除应用程序后,它将再次按预期工作 .

使用Android 4.2在Nexus 4上测试 . 这是代码:

$(document).on('backbutton', function (ev) {
        ev.preventDefault();
        if (!$('#divHomeScreen').is(':visible')) {
            $('.screen').hide();
            $('#divHomeScreen').show();
            return false;
        } else {
            navigator.app.exitApp();
        }
    });

谢谢你的帮助 .

1 回答

  • 1

    我所做的是根据需要动态添加和删除后退按钮处理程序 . 例如...

    function showScreen()
        {
          $("#divHomeScreen").hide();
          $(".screen").show();
          $(document).on("backbutton", onBackButton);
        }
    
        function hideScreen()
        {
          $(".screen").hide();
          $("#divHomeScreen").show();
          $(document).off("backbutton", onBackButton);
        }
    
        function onBackButton()
        {
          hideScreen();
        }
    

    这是在Galaxy S3 Android 4.3和PhoneGap 3.3.0上测试的

相关问题