后退按钮&适用于Android的iFrame - 帮助一个菜鸟

时间:2013-12-09 15:34:29

标签: javascript android html iframe cordova

我看到有很多关于我的问题的答案,但没有任何效果,我会发疯。

我有一个真正简单的iframe结构,我想要的是Back Button没有回来(逐页)但是关闭app(隐藏或关闭是相同的)。

认为我真的是新手,所以请一步一步向我解释

这是我的代码:

<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">
    function onLoad() {
        document.addEventListener("deviceready", onDeviceReady, false);
    }

    function onDeviceReady() {
        // Register the event listener
        document.addEventListener("backbutton", onBackKeyDown, false);
    }

    // Handle the back button
    //
    function onBackKeyDown() {

        navigator.app.exitApp();
    }
</script>
</head>

<body>
    <div data-role="page" id="page">
        <div data-role="content">

            <div class="container">

                <div class="content">
                    <iframe src="home.html" name="pagina" class="pagina"> </iframe>
                </div>

感谢!!!!

2 个答案:

答案 0 :(得分:0)

过去这对我有用。

document.addEventListener("deviceready", onDeviceReady, false);

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

希望这有帮助。

答案 1 :(得分:0)

我最初也遇到了同样的问题。但经过多次迭代,我成功了。这是片段,在app.js的.run函数中添加它。

.run(function($ionicPlatform,$ionicPopup) {
      $ionicPlatform.registerBackButtonAction(function (event) {
        if(0){
          navigator.app.exitApp();
        }
        else {
          navigator.app.backHistory();
        }
      }, 101);
})

在上面的代码中101是优先级。对于退出应用程序,优先级为100.因此我们将优先级提高到101。