js监听返回事件,返回直接关闭窗口事件(微信网页返回关闭)

1.第一种:https://blog.csdn.net/u010672992/article/details/85706687

具体实现代码如下:

$(function(){
        pushHistory();
        window.addEventListener("popstate", function(e) {
            alert("我监听到了浏览器的返回按钮事件啦");//根据自己的需求实现自己的功能
        }, false);
        function pushHistory() {
            var state = {
                title: "title",
                url: "#"
            };
            window.history.pushState(state, "title", "#");
        }
    });
 

//关闭微信页面
function weixinClosePage() {
    if (typeof WeixinJSBridge == "undefined") {
        if (document.addEventListener) {
            document.addEventListener('WeixinJSBridgeReady', weixin_ClosePage, false);
        } else if (document.attachEvent) {
            document.attachEvent('WeixinJSBridgeReady', weixin_ClosePage);
            document.attachEvent('onWeixinJSBridgeReady', weixin_ClosePage);
        }
    } else {
        weixin_ClosePage();
    }
}
function weixin_ClosePage() {
    WeixinJSBridge.call('closeWindow');
}

直接在你需要返回自定义菜单的页面中执行weixinClosePage()就行。

2.第二种

$(function(){
    pushHistory();
    window.addEventListener("popstate", function(e) {
        //alert("我监听到了浏览器的返回按钮事件啦");//根据自己的需求实现自己的功能
        //alert('guanbi');
        WeixinJSBridge.call('closeWindow');
        if(typeof(WeixinJSBridge)!="undefined"){
                WeixinJSBridge.call('closeWindow');
            }else{
                if (navigator.userAgent.indexOf("MSIE") > 0) {  
                    if (navigator.userAgent.indexOf("MSIE 6.0") > 0) {  
                        window.opener = null; window.close();  
                    }  
                    else {  
                        window.open('', '_top'); window.top.close();  
                    }  
                }  
                else if (navigator.userAgent.indexOf("Firefox") > 0) {  
                    window.location.href = 'about:blank ';  
                    //window.history.go(-2);  
                }  
                else {  
                    window.opener = null;   
                    window.open('', '_self', '');  
                    window.close();  
                }
            }
    }, false);
    window.onbeforeunload = function() {
            return;
        } 
    function pushHistory() {
        var state = {
            title: "title",
            url: ""
        };
        window.history.pushState(state, "title", "");
    }
});

你可能感兴趣的:(web)