问题描述
支付宝回调的付款页面,首次回调后,安卓系统无法调起支付控件,需重新刷新h5页面。
参考原因
当页面加载完后会创建 AlipayJSBridge对象,同时会触发AlipayJSBridgeReady事件,原因可能是当执行 AlipayJSBridge.call(’’)操作时,AlipayJSBridge还没有创建,所以无法执行。
//支付宝浏览器打开
var tradeNo1 = result.data;
document.addEventListener('AlipayJSBridgeReady', function() {
AlipayJSBridge.call("tradePay",{
tradeNO:tradeNo1
},function(result){
if(result.resultCode=='9000'){
AlipayJSBridge.call('closeWebview');
}else{
}
});
}, false);
支付宝官方源码
创建订单+JSAPI唤起收银台支付
// 由于js的载入是异步的,所以可以通过该方法,当AlipayJSBridgeReady事件发生后,再执行callback方法
function ready(callback) {
if (window.AlipayJSBridge) {