Javascript 在Cordova Android应用程序上使用后退按钮关闭模式窗口
我正在使用Bootstrap3为HTML和CSS构建一个Cordova web应用程序。我只使用一个index.html文件,在该文件中,我使用模态窗口来执行特定操作 从应用程序的一些初始测试来看,当模式窗口显示时,最自然的做法是使用手机上的后退按钮将其关闭。但是,当他们按下此按钮时,应用程序将关闭 我曾尝试以一种基本的方式处理后退按钮事件,但无论是在模拟器上还是在我的开发手机(华为Y300,如果这有什么不同的话)上,它似乎都不起作用。代码如下:Javascript 在Cordova Android应用程序上使用后退按钮关闭模式窗口,javascript,android,cordova,Javascript,Android,Cordova,我正在使用Bootstrap3为HTML和CSS构建一个Cordova web应用程序。我只使用一个index.html文件,在该文件中,我使用模态窗口来执行特定操作 从应用程序的一些初始测试来看,当模式窗口显示时,最自然的做法是使用手机上的后退按钮将其关闭。但是,当他们按下此按钮时,应用程序将关闭 我曾尝试以一种基本的方式处理后退按钮事件,但无论是在模拟器上还是在我的开发手机(华为Y300,如果这有什么不同的话)上,它似乎都不起作用。代码如下: // deviceready Event Han
// deviceready Event Handler
//
// The scope of 'this' is the event. In order to call the 'receivedEvent'
// function, we must explicitly call 'app.receivedEvent(...);'
onDeviceReady: function() {
app.receivedEvent('deviceready');
// Cordova is loaded and it is now safe to call Cordova methods
//
function onDeviceReady() {
// Register the event listener
document.addEventListener("backbutton", onBackKeyDown, false);
}
// Handle the back button
//
function onBackKeyDown() {
// whatever you want to do
alert('Back button Pressed');
}
},
我很确定我知道该怎么做,以找出模态窗口是否打开,所以我可以自己处理。但是,试图控制后退按钮我做不到。查看代码后,我认为它位于错误的位置。因此,我在index.js文件中添加了以下内容:
document.addEventListener("backbutton", onBackKeyDown, false);
function onBackKeyDown(event) {
event.preventDefault();
if($("#myModal").hasClass('in')) {
$("#myModal").modal('hide');
} else if ($('body').hasClass('mme')){
$('body').removeClass('mme');
} else {
navigator.app.exitApp();
}
}