标签:
内嵌到APP里面的H5页面,当点击APP上的返回按钮或者手机上的返回按钮时,如果H5页面不是页面的跳转,而是仅仅的Tab切换时,就会出现直接跳出页面的情况。
解决的办法:
function isVisible(obj){
var ret = true;
if(obj.style.display === "none"){
ret = false;
}
return ret;
}
function showPage(){
var p1 = $(".pagesa");
var p2 = $(".find_province_wrap");
var p3 = $(".find_city_wrap");
if(isVisible(p1[0])){
$(".pagesa").hide();
p2.show();
window.pageIndex = ‘province‘;//设置页面index,为后面回退做标识
}else if(isVisible(p2[0])){
$(".find_province_wrap").hide();
p3.show();
window.pageIndex = ‘city‘;//设置页面index,为后面回退做标识
}else if(isVisible(p3[0])){
$(".find_city_wrap").hide();
p1.show();
window.pageIndex = ‘home‘;//设置页面index,为后面回退做标识
}
}
function getOSType() {
if (/(Android)/i.test(navigator.userAgent)) {
return 0;
} else if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {
return 1;
} else {
return 2;
}
}
function backButtonClicked(){
var pageIndex = window.pageIndex;
var goBack = true;//true代表页面不回退。false代表页面回退。
if(pageIndex === "city"){
//find_city_wrap城市页、find_province_wrap省份页、pagesa首页,页面的切换
$(".pagesa").hide();
$(".find_city_wrap").hide();
$(".find_province_wrap").show();
$(".active").removeClass("active");
window.pageIndex = ‘province‘;
}else if (pageIndex === ‘province‘) {
$(".find_city_wrap").hide();
$(".find_province_wrap").hide();
$(".pagesa").show();
window.pageIndex = ‘home‘;
}else{
goBack = false;
}
//window.event.returnValue = false;
var ostype = getOSType();
if (ostype == 1) {//ios
return goBack;
} else{//android
return window.daojia.js_back_result(goBack);
}
}
标签:
原文地址:http://www.cnblogs.com/fehammer/p/5631024.html