从facebook.com、phonegap android返回时启用后退按钮

从facebook.com、phonegap android返回时启用后退按钮,android,cordova,Android,Cordova,我正在开发一个phonegap android应用程序,我最初使用它禁用了设备的后退按钮 document.addEventListener("backbutton", onBackKey, false); function onBackKey(){ } 但是,当我点击应用程序中的一个按钮转到facebook登录页面时,我希望启用“后退”按钮。我试图删除事件侦听器,但没有成功 funtion f_click(url, width, height){ document.removeEv

我正在开发一个phonegap android应用程序,我最初使用它禁用了设备的后退按钮

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

function onBackKey(){

}
但是,当我点击应用程序中的一个按钮转到facebook登录页面时,我希望启用“后退”按钮。我试图删除事件侦听器,但没有成功

funtion f_click(url, width, height){
   document.removeEventListener("backbutton", onBackKey, false);  
   //some link to start facebook
}
我也用过

document.removeEventListener("backbutton", function(e) { e.preventDefault(); }, false);  
但是每次我都会遇到这个错误,
cordova没有定义
。为什么?

别忘了调用“deviceready”事件

从phonegap文档:

这是每个Cordova应用程序都应该关注的一个非常重要的事件 使用

Cordova由两个代码库组成:native和JavaScript。而 加载本机代码时,将显示自定义加载图像。然而, 只有在DOM加载后,才会加载JavaScript。这意味着你的网站 应用程序可能会调用CordovaJavaScript函数 在加载之前

Cordova DeviceRady事件在Cordova完全加载后触发。 设备启动后,您可以安全地呼叫Cordova 功能

试着这样做:

var deviceReady = false;

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

function onDeviceReady()
{
    deviceReady = true;
}

function f_click(url, width, height)
{
    if(deviceReady)
    {
        document.removeEventListener("backbutton", onBackKey, false);
        //...
    }
}

在你的问题中,你有点击功能-这是一个打字错误还是你的真实代码中也缺少了c。。。我们如何在其他函数中编写函数,当我尝试您的解决方案时,它给出了错误-“f_click未定义”确定。。。我编辑了我的帖子。我不知道这是否是最好的解决方案,但你必须等待设备的回电。回电对我来说仍然不起作用:(,回电按钮不起作用,它帮助了我……:)Thanx很多,伙计。。事实上,在第一次尝试时,我忘了声明“DeviceRady”。很高兴能帮上忙。也许你可以验证我的答案:)