• 监听公众号返回按钮,直接退出到公众号页面


    直接退出到公众号页面

    window.history.pushState(null, null, "#");
                window.addEventListener('popstate', function(e) {
                    WeixinJSBridge.call('closeWindow');
                }, false);

    通过监听popstate事件,来判断是否点击返回按钮,比如从A页面跳转到B页面(监听popstate),
    然后再跳转到C页面,点击返回的按钮,测试成功,包括安卓版,
    但是问题来了,IOS版的微信,是会立即触法popstate事件,导致直接从C页面跳转到A页面,
    其他的支付宝(安卓、IOS)、微信(安卓)都是可以,就是微信IOS版不行。

    解决方法

    var isRun = ''
                var isRuns
                function isRuns() {
                    isRun = false
                    //                直接退出到公众号页面
                    window.history.pushState(null, null, "#");
                    window.addEventListener('popstate', function(e) {
                        if(isRun == true) {
                            WeixinJSBridge.call('closeWindow');
                        }
                    }, false);
                }
                window.history.pushState(null, null, "#");
                window.addEventListener('pageshow', function() {
                    isRun = false;
                    setTimeout(function() {
                        isRun = true;
                    }, 1000); //延迟1秒 防止微信返回立即执行popstate事件
                    isRuns()
                });
  • 相关阅读:
    ASP.NET中的状态保持(转载)
    Win7系统下VS2008安装SP1补丁解决JQuery无智能提示的问题
    合并多个List<T>类型并通过LINQ按指定属性排序
    ASP.NET状态保持:ViewState
    第一部分 CLR基础:第1章 CLR的执行模型
    Oracle存储过程知识汇总
    ASP.NET中Button控件的CommandName和CommandArgument属性用法
    PL/SQL Developer使用
    ASP.NET常用代码汇总
    PL/SQL Developer中文注释乱码的解决办法
  • 原文地址:https://www.cnblogs.com/lipengze/p/11429279.html
Copyright © 2020-2023  润新知