开始用的表单提交,返回参数就丢失,换成url跳转,popstate监听 (注释部分)ios10测试始终有问题,继续搜,最后用pageshow,pagehide完美解决(另外说一句:珍爱生命,远离微信和ios)
var wxback = { init :function(){ //隐藏微信分享按钮等 document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() { 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);*/ var isPageHide = false; window.addEventListener('pageshow', function () { if (isPageHide) { window.location.reload(); } }); window.addEventListener('pagehide', function () { isPageHide = true; }); } }, pushHistory :function () { var state = { title: document.title, url: location.href } window.history.pushState(state, state.title, state.url); console.log(window.history); }, }
以上所述是小编给大家介绍的ios微信浏览器返回不刷新问题完美解决方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!