js 监听从其他页面返回,兼容安卓IOS

作者: wxfeng 分类: web前端 发布时间: 2023-08-01 14:51    阅读 1,437 次
<script>
    $(document).ready(() => {
        var isback =false;
        if (window.performance.navigation.type == 0) {
            console.log("表示当前页面是通过点击别的链接进入的");
        }
        if (window.performance.navigation.type == 1) {
            console.log("表示当前页面是通过刷新加载的");
        }
        if (window.performance.navigation.type == 2) {
            console.log("表示当前页面是通过点击后退按钮或者是通过history.go(-1)加载的");
            //安卓端检测到从其他页面返回
            isback =true;
            //微信浏览器关闭当前窗口
            document.addEventListener('WeixinJSBridgeReady', function() {
                WeixinJSBridge.call('closeWindow');
            }, false);
            WeixinJSBridge.call('closeWindow');
        }

        //ios端检测从其他页面返回方法
        pushHistory();
        window.addEventListener("popstate", function(e) {
            isback =true;
            //微信浏览器关闭当前窗口
            document.addEventListener('WeixinJSBridgeReady', function() {
                WeixinJSBridge.call('closeWindow');
            }, false);
            WeixinJSBridge.call('closeWindow');
        }, false);
        function pushHistory() {
            var state = {
                title: "title",
                url: "#"
            };
            window.history.pushState(state, "title", "#");
        }
    });
</script>

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表评论

您的电子邮箱地址不会被公开。