首頁  >  文章  >  web前端  >  在微信、支付寶、百度錢包實現點擊返回按鈕關閉當前頁面和窗口

在微信、支付寶、百度錢包實現點擊返回按鈕關閉當前頁面和窗口

黄舟
黄舟原創
2017-03-28 13:58:525284瀏覽

最近在使用微信、支付寶、百度錢包實現網頁支付,對支付成功將自動關閉頁面,對於支付失敗,將顯示錯誤訊息。當在錯誤頁面的時候,點擊返回

或Android實體按鍵上一步的時候,將關閉頁面。

在微信、支付寶、百度錢包中,他們對頁面關閉進行了封裝,傳統的window.close()是無效的,必須要使用它們的js程式碼才能關閉。以下是三種行動app

的關閉方式:

WeixinJSBridge.call('closeWindow');//微信  
 AlipayJSBridge.call('closeWebview');  //支付宝  
 BLightApp.closeWindow();//百度钱包

透過瀏覽器的頭判斷是那種瀏覽器:

var ua = navigator.userAgent.toLowerCase();    
f(ua.match(/MicroMessenger/i)=="micromessenger") {    
      alert("微信客户端");  
} else if(ua.indexOf("alipay")!=-1){    
 alert("支付宝客户端");   
}else if(ua.indexOf("baidu")!=-1){    
 alert("百度客户端");   
}

對返回、上一頁、後退進行監聽,並對history中放入當前頁地址:

$(function(){  
            pushHistory();  
            window.addEventListener("popstate", function(e) {  
                  
        }, false);  
            function pushHistory() {  
                var state = {  
                    title: "title",  
                    url: "#"  
                };  
                window.history.pushState(state, "title", "#");  
            }  
});

整個實現完整程式碼:

$(function(){  
            pushHistory();  
            window.addEventListener("popstate", function(e) {  
                pushHistory();  
                var ua = navigator.userAgent.toLowerCase();    
                if(ua.match(/MicroMessenger/i)=="micromessenger") {    
                     WeixinJSBridge.call('closeWindow');  
                } else if(ua.indexOf("alipay")!=-1){    
                     AlipayJSBridge.call('closeWebview');    
                }else if(ua.indexOf("baidu")!=-1){    
                    BLightApp.closeWindow();  
                }  
                else{  
                    window.close();  
                }  
        }, false);  
            function pushHistory() {  
                var state = {  
                    title: "title",  
                    url: "#"  
                };  
                window.history.pushState(state, "title", "#");  
            }  
        });

以上就是 在微信、支付寶、百度錢包實現點擊返回按鈕關閉當前頁面和視窗的內容,更多相關內容請關注PHP中文網(www.php.cn) !

相關文章:

js關閉當前頁面(視窗)的幾種方式總結

待指定時間後自動跳轉或關閉當前頁面的js代碼彈出關閉提示js程式碼

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn