在我的应用程序中,我正在为iOs和Android环境创建一个WL.TabBar
对象,例如导航菜单。为了模仿jquery的后退按钮我正在使用像这样的简单函数
function back(){
history.back();
return false;
}
function forward(){
history.forward();
return false;
}
在iOs模拟器中它可以工作,但在Android没有。我正在使用Android 2.2虚拟设备。
编辑:
这是android/js/[AppName].js
文件中的代码,也是iOs环境的代码。
function wlEnvInit(){
wlCommonInit();
// Environment initialization code goes here
navigation.init();
navigation.addItem("item1",back,"Back",{});
navigation.addItem("item2",forward,"Forward",{});
navigation.setVisible(true);
}
var navigation = WL.TabBar;
function back(){
window.history.back();
return false;
}
function forward(){
window.history.forward();
return false;
}
答案 0 :(得分:2)
此问题似乎是Android 2.x独有的。您的代码在Android 4.x上正常运行。出于某种原因,当直接从Android 2.x上的标签栏单击处理程序调用时,windows.back()/ windows.forward()无效。您可以使用短暂的超时来解决此问题:
function back() {
setTimeout(function() {
window.history.back();
}, 100);
return false;
}
function forward() {
setTimeout(function() {
window.history.forward();
}, 100);
return false;
}