如何在 framework7 中检测 android 的后退按钮
how to detect back button of android in framework7
我最近正在使用 framework7 构建一个应用程序。我的应用程序包含一个 html 文件,其中包含所有视图。要在视图之间导航,页面底部有一个后退按钮。
对于后退按钮,我正在使用代码
var myView = app.view.current;
myView.router.back();
如果我按下 android 设备上的后退按钮,应用程序将关闭
如何使用 android phone 的后退按钮进入主页。
I have use pushState:true but it doesnt work for me.
下面是我的 app.js 文件
// Dom7
var $ = Dom7;
// Theme
var theme = 'auto';
if (document.location.search.indexOf('theme=') >= 0) {
theme = document.location.search.split('theme=')[1].split('&')[0];
}
// Init App
var app = new Framework7({
id: 'io.framework7.testapp',
root: '#app',
theme: theme,
on:{
pageInit : function(page){
console.log("page init function called aakash");
document.addEventListener("backbutton", app.methods.onBackKeyDown,
false);
}
},
pushState:true,
data: function () {
return {
user: {
firstName: 'John',
lastName: 'Doe',
},
};
},
methods: {
helloWorld: function () {
console.log('dfvdfv')
app.dialog.alert('Hello World!');
},
onDeviceReady: function() {
},
onBackKeyDown: function() {
console.log("back button pressed");
}
},
routes: routes,
vi: {
placementId: 'pltd4o7ibb9rc653x14',
},
});
我遇到过这个问题,用方法解决了
(如果您使用的是 webview)
Android Java 本机代码:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
myWebView.evaluateJavascript("javascript:goBack();", null);
}
return true;
}
javascript 在你的框架应用 js
function goBack() {
myView.router.back();
}
或者
function goBack() {
$('.back').trigger('click')
}
在 jquery 函数中试试这个
嗯,我有办法了!!这对我有用
var app = new Framework7({
initOnDeviceReady:true,
view:{
pushState:true,
}
});
我最近正在使用 framework7 构建一个应用程序。我的应用程序包含一个 html 文件,其中包含所有视图。要在视图之间导航,页面底部有一个后退按钮。
对于后退按钮,我正在使用代码
var myView = app.view.current;
myView.router.back();
如果我按下 android 设备上的后退按钮,应用程序将关闭
如何使用 android phone 的后退按钮进入主页。
I have use pushState:true but it doesnt work for me.
下面是我的 app.js 文件
// Dom7
var $ = Dom7;
// Theme
var theme = 'auto';
if (document.location.search.indexOf('theme=') >= 0) {
theme = document.location.search.split('theme=')[1].split('&')[0];
}
// Init App
var app = new Framework7({
id: 'io.framework7.testapp',
root: '#app',
theme: theme,
on:{
pageInit : function(page){
console.log("page init function called aakash");
document.addEventListener("backbutton", app.methods.onBackKeyDown,
false);
}
},
pushState:true,
data: function () {
return {
user: {
firstName: 'John',
lastName: 'Doe',
},
};
},
methods: {
helloWorld: function () {
console.log('dfvdfv')
app.dialog.alert('Hello World!');
},
onDeviceReady: function() {
},
onBackKeyDown: function() {
console.log("back button pressed");
}
},
routes: routes,
vi: {
placementId: 'pltd4o7ibb9rc653x14',
},
});
我遇到过这个问题,用方法解决了
(如果您使用的是 webview)
Android Java 本机代码:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
myWebView.evaluateJavascript("javascript:goBack();", null);
}
return true;
}
javascript 在你的框架应用 js
function goBack() {
myView.router.back();
}
或者
function goBack() {
$('.back').trigger('click')
}
在 jquery 函数中试试这个
嗯,我有办法了!!这对我有用
var app = new Framework7({
initOnDeviceReady:true,
view:{
pushState:true,
}
});