您好,欢迎来到花图问答。
搜索
您的当前位置:首页监听微信浏览器的回退事件

监听微信浏览器的回退事件

来源:花图问答

浏览器回退事件的监听:

当前所进行的处理是点击返回时关闭页面

同时对ios微信端popstate自动触发的bug做了处理

代码如下:

/**

 * 浏览器回退事件监听

 */

var listenerBackHandler = {

    param: {

        isRun: false, //防止微信返回立即执行popstate事件

    },

    listenerBack: function () {

        var state = {

            title: "title",

            url: "#"

        };

        window.history.pushState(state, "title", "#");

        window.addEventListener("popstate", function (e) {

            if (listenerBackHandler.param.isRun) {

                WeixinJSBridge.call('closeWindow');

            }

        }, false);

    },

    //初始化返回事件

    initBack: function () {

        window.addEventListener('pageshow', function () {

            listenerBackHandler.param.isRun = false;

            setTimeout(function () { listenerBackHandler.param.isRun = true; }, 100); //延迟1秒 防止微信返回立即执行popstate事件

            listenerBackHandler.listenerBack();

        });

    }

}

listenerBackHandler.initBack(); 

针对IOS微信端popstate自动触发的解决是用延迟100毫秒来做的处理

Copyright © 2019- huatuowenda.com 版权所有 湘ICP备2023022495号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务