ios微信浏览器返回不刷新问题完美解决方法
开始用的表单提交,返回参数就丢失,换成url跳转,popstate监听(注释部分)ios10测试始终有问题,继续搜,最后用pageshow,pagehide完美解决(另外说一句:珍爱生命,远离微信和ios)
varwxback={
init:function(){
//隐藏微信分享按钮等
document.addEventListener('WeixinJSBridgeReady',functiononBridgeReady(){
WeixinJSBridge.call('hideToolbar');
WeixinJSBridge.call('hideOptionMenu');
WeixinJSBridge.call('hideMenuItems');
});
if(getSystem()=="ios"){
//this.pushHistory();
/*window.addEventListener("popstate",function(e){//回调函数中实现需要的功能
//window.location.href=document.referrer+"&"+Math.floor(Math.random()*1000);
//history.go(-1);//不管怎么样都是返回到最初的页面返回了n次
//history.back();//不管怎么样都是返回到最初的页面返回了n次
//window.location=document.referrer;//上一个页面url
//WeixinJSBridge.call('closeWindow');//直接关闭页面
},false);*/
varisPageHide=false;
window.addEventListener('pageshow',function(){
if(isPageHide){
window.location.reload();
}
});
window.addEventListener('pagehide',function(){
isPageHide=true;
});
}
},
pushHistory:function(){
varstate={
title:document.title,
url:location.href
}
window.history.pushState(state,state.title,state.url);
console.log(window.history);
},
}
总结
以上所述是小编给大家介绍的ios微信浏览器返回不刷新问题完美解决方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!