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

Javascript 听“后退”按钮会使其停止工作,javascript,cordova,Javascript,Cordova,我正在开发一个Phonegap应用程序,我想听听后退按钮事件。我有: document.addEventListener("backbutton", function(){ console.log('in back button'); }, false); 这是可行的,但“后退”按钮随后被禁用,当我只收听事件时,它不会做任何事情。我试过: document.addEventListene

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

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

              console.log('in back button');              

        }, false);
这是可行的,但“后退”按钮随后被禁用,当我只收听事件时,它不会做任何事情。我试过:

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

            return true;

        }, false);

但结果是一样的。它进入匿名函数,但不会继续使用正常的后退按钮功能。如何使“后退”按钮在侦听时正常运行?

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

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==iOS,请添加一个逻辑按钮