ホームページ >ウェブフロントエンド >H5 チュートリアル >WeChat、Alipay、Baidu Wallet の現在のページとウィンドウを閉じるには、戻るボタンをクリックしてください。

WeChat、Alipay、Baidu Wallet の現在のページとウィンドウを閉じるには、戻るボタンをクリックしてください。

黄舟
黄舟オリジナル
2017-03-28 13:58:525355ブラウズ

最近、WeChat、Alipay、Baidu Walletを使用して支払いが成功すると、ページが自動的に閉じられます。支払いに失敗すると、エラーメッセージが表示されます。エラー ページで [戻る]

をクリックするか、Android の物理ボタンをクリックして戻ると、ページが閉じられます。

WeChat、Alipay、Baidu Wallet では、従来の window.close() は無効であり、ページを閉じるには JS コードを使用する必要があります。モバイルアプリを閉じるには、次の 3 つの方法があります

:

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("百度客户端");   
}

戻る、前ページ、戻るを監視し、現在のページのアドレスを履歴に記録します:

$(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", "#");  
            }  
        });

上記は、WeChat、Alipay、Baidu Wallet で戻るボタンをクリックして現在のページとウィンドウを閉じる方法の内容です。その他の関連コンテンツについては、PHP に注目してください。中国語のウェブサイト (www.php.cn) !

関連記事:

jsで現在のページ(ウィンドウ)を閉じるいくつかの方法まとめ

指定時間後に現在のページを自動的にジャンプしたり閉じたりするjsコード

新規開きますウィンドウを閉じて、ポップアップを閉じるプロンプトの JS コードを表示せずに現在のページを閉じます

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。