Javascript Framewok7 backbutton侦听器不在多个选项卡上工作
我试图阻止我的Javascript Framewok7 backbutton侦听器不在多个选项卡上工作,javascript,android,cordova,html-framework-7,Javascript,Android,Cordova,Html Framework 7,我试图阻止我的cordovaandroid应用程序在我的手机(android)上按下物理后退按钮时无法关闭,相反,我想打开一个对话框,在关闭应用程序之前按下按钮两次,但我无法正确地理解如何调用或收听后退按钮 以下是我使用的framework7 <div class="toolbar tabbar-labels toolbar-bottom-md"> <div class="toolbar-inner"> <a href="#vie
cordova
android应用程序在我的手机(android)上按下物理后退按钮时无法关闭,相反,我想打开一个对话框,在关闭应用程序之前按下按钮两次,但我无法正确地理解如何调用或收听后退按钮
以下是我使用的framework7
<div class="toolbar tabbar-labels toolbar-bottom-md">
<div class="toolbar-inner">
<a href="#view-home" class="tab-link tab-link-active">
<i class="icon f7-icons ios-only">home</i>
<i class="icon f7-icons ios-only icon-ios-fill">home_fill</i>
<i class="icon material-icons md-only">home</i>
<span class="tabbar-label">Home</span>
</a>
<a href="#view-catalog" class="tab-link">
<i class="icon f7-icons ios-only">list</i>
<i class="icon f7-icons ios-only icon-ios-fill">list_fill</i>
<i class="icon material-icons md-only">view_list</i>
<span class="tabbar-label">catalog</span>
</a>
<a href="#view-settings" class="tab-link">
<i class="icon f7-icons ios-only">settings</i>
<i class="icon f7-icons ios-only icon-ios-fill">settings_fill</i>
<i class="icon material-icons md-only">settings</i>
<span class="tabbar-label">Settings</span>
</a>
</div>
</div>
初始化视图
// Init/Create views
var homeView = app.views.create('#view-home', {
url: '/',
on: {
pageInit: function (e, page) {
// do something when page initialized
document.addEventListener("backbutton", onBackKeyDown, false);
}
}
});
var catalogView = app.views.create('#view-catalog', {
url: '/devices/'
});
var settingsView = app.views.create('#view-settings', {
url: '/settings/'
});
首先,我将调用onBackKeyDown
作为函数
function onBackKeyDown(){
}
但现在我把它放在我的应用程序方法上
// App root methods
methods: {
onBackKeyDown: function(){
app.dialog.alert('this was called');
},
但是,当我按下手机上的Back按钮时,它不会执行任何建议。你的onBackKeyDown监听器在查看主页
视图中。
从中取出并将其放置在与代码其余部分相同的级别:
var app = new Framework7({.....});
document.addEventListener("backbutton", onBackKeyDown, false);
它应该能让你的所有应用程序都成为听众。谢谢你的回复,我尝试了你的建议,但仍然没有运气,我还遵循了cordova的文档,onDeviceReady
在浏览器上启动,但在我的android手机上没有任何事情发生,在backbutton上发出警报。
var app = new Framework7({.....});
document.addEventListener("backbutton", onBackKeyDown, false);