Récemment, j'utilise WeChat, Alipay et Baidu Wallet pour mettre en œuvre le paiement Web. Si le paiement réussit, la page sera automatiquement fermée. Si le paiement échoue, un message d'erreur s'affichera. Lorsque vous êtes sur la page d'erreur, cliquez sur Retour
ou sur le bouton physique Android pour revenir en arrière, la page sera fermée.
Dans WeChat, Alipay et Baidu Wallet, ils encapsulent la fermeture de page. Le window.close() traditionnel n'est pas valide et leur code js doit être utilisé pour le fermer. Voici trois façons de fermer les applications mobiles
:
WeixinJSBridge.call('closeWindow');//微信 AlipayJSBridge.call('closeWebview'); //支付宝 BLightApp.closeWindow();//百度钱包
Déterminez de quel navigateur il s'agit grâce à l'en-tête du navigateur :
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("百度客户端"); }
Pour Retour, Haut Une page, revenez à surveiller, et mettez l'adresse de la page actuelle dans l'historique :
$(function(){ pushHistory(); window.addEventListener("popstate", function(e) { }, false); function pushHistory() { var state = { title: "title", url: "#" }; window.history.pushState(state, "title", "#"); } });
Le code complet de l'ensemble de l'implémentation :
$(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", "#"); } });
Ce qui précède est implémenté dans WeChat, Alipay et Baidu Wallet Cliquez sur le bouton de retour pour fermer le contenu de la page et de la fenêtre actuelles. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (m.sbmmt.com) !
Articles connexes :
Résumé JS de plusieurs façons de fermer la page actuelle (fenêtre)
Automatiquement après le spécifié time JS code pour sauter ou fermer la page actuelle
Ouvrez une nouvelle fenêtre et fermez la page actuelle sans afficher l'invite de fermeture
.