ios微信浏览器返回不刷新问题完美解决方法

来源:爱站网时间:2020-04-29编辑:网友分享
在IOS中我们都会使用微信进行浏览页面,但是也会出现浏览器返回不刷新的问题,爱站技术频道曾经使用下文的代码在安卓中进行操作是没有问题的,但在IOS中却无法刷新,这个时候我们应该怎么做呢?看看ios微信浏览器返回不刷新问题完美解决方法吧!

在IOS中我们都会使用微信进行浏览页面,但是也会出现浏览器返回不刷新的问题,爱站技术频道曾经使用下文的代码在安卓中进行操作是没有问题的,但在IOS中却无法刷新,这个时候我们应该怎么做呢?看看ios微信浏览器返回不刷新问题完美解决方法吧!

开始用的表单提交,返回参数就丢失,换成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微信浏览器返回不刷新问题完美解决方法,js.aizhan.com除了专业知识的介绍,还有许多让大家收益良多的知识,赶紧收藏我们吧!

上一篇:IOS ObjectiveC中的赋值与对象拷贝

下一篇:IOS开发中加载大量网络图片优化方法

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载