听后退按钮会使其停止工作

时间:2014-02-05 14:30:10

标签: javascript cordova

我正在开发一个Phonegap应用程序,我想听后退按钮事件。我这样做:

        document.addEventListener("backbutton", function(){

              console.log('in back button');              

        }, false);

这有效,但后退按钮被禁用,当我只是听这个事件时,它什么都不做。我试过了:

        document.addEventListener("backbutton", function(){

            return true;

        }, false);

但结果相同。它进入匿名函数但不继续使用正常的后退按钮功能。如何在收听时让后退按钮正常进行?

1 个答案:

答案 0 :(得分:0)

添加此类侦听器时,将覆盖默认操作。您可以通过删除它来使用默认操作:

document.addEventListener("backbutton", goToX, false);

function goToX(){
//Do what you want
}

//to cancel the override
document.removeEventListener("backbutton", goToX, false);

如果函数是匿名函数,则无法删除侦听器

您还可以保留监听器并手动设置退出操作

if(platform != 'iOS')
document.addEventListener("backbutton", backbuttonListener, false);

function backbuttonListener(){
    if(Container.currentPrint == Main){
        navigator.app.exitApp();
    }
    else{
        Container.setContent(Main);
    }
}

别忘了在I-phone中,你没有物理后退按钮,所以请记得在window.device.platform ==&#34; iOS&#34; <时添加逻辑1 / p>