【问题标题】:How to disable android back button click in html5 web app如何在 html5 网络应用程序中禁用 android 后退按钮单击
【发布时间】:2013-12-03 10:20:36
【问题描述】:

我想禁用我使用 html5、javascript 和 jquery mobile 构建的网络应用程序中的 android 后退按钮单击。

单击 android 后退按钮时,它会最小化我的网络应用程序。 Web 应用程序进入后台。我怎样才能防止这种情况?我尝试了很多方法,例如,

document.addEventListener('backbutton', function(){});  

data-backbtn = false 等...但仍然没有运气..

如果是原生的安卓应用,那就简单了。但是如何做到这一点是在一个网络应用程序中。

感谢任何形式的帮助。

【问题讨论】:

    标签: javascript android jquery html


    【解决方案1】:

    你在Phonegap工作吗?

    //Deviceready function
    document.addEventListener('deviceready', function() {
    
        document.addEventListener("backbutton", goBack, false);
    
    }, false);
    
    
    //Function for back button function
    function goBack(){
    }
    

    【讨论】:

    • 不..我没有使用电话间隙..只是使用带有html5和javascript的eclipse ide。
    【解决方案2】:

    将以下代码放入您的 Main Activity .java 类中

    @Override
        public boolean onKeyDown(int keyCode, KeyEvent event) {
            if (keyCode == KeyEvent.KEYCODE_BACK) {
    
                return true;
            }
            return super.onKeyDown(keyCode, event);
        }
    

    【讨论】:

    • 我这里没有主要活动。这不是本机应用程序。这是一个使用 javascript 和 html5 开发的网络应用程序。
    • 在您的 src 文件夹中,应该有一个 .java 类
    • No.. 这是在浏览器中运行的网络应用程序。没有这样的java文件
    • 如果它没有适当的包装器(java 类/应用程序),您可以使用一些代码来查看按下了哪些键。 Keycode 附加在一个 div 中,查看返回按钮的代码。并在将该特定键码发送到正文/文档时返回 false
    【解决方案3】:

    如果我理解正确,网络应用程序基本上是在手机上的浏览器中打开网页。您无法从网络应用程序禁用后退键。

    它内置于手机中,当按下返回键时,将应用程序(在本例中为浏览器)置于后台。

    如果您希望在用 html/css/javascript 编写代码时使用本机功能,请检查像 Phonegap 这样的包装器。它可以轻松地将您的 Web 应用程序打包到本机应用程序中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-11-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-29
      • 2023-03-30
      • 1970-01-01
      相关资源
      最近更新 更多