Есть ли способ вызвать событие, когда мода Stripe Checkout закрыта?
Задержка между задержкой Stripe и ее ответом составляет около 0,5-1 секунды. В это время пользователь может щелкнуть со страницы и т.д. Чтобы решить эту проблему, мы можем сделать что-то вроде отключения всех ссылок или поместить надпись ( "обложка" ) поверх страницы, которая удаляется только тогда, когда Stripe завершена обработка,
Проблема заключается в том, что невозможно закрыть этот оверлей, если человек решает закрыть модальный режим Stripe (вместо того, чтобы пытаться обработать платеж). Вы не можете настроить таргетинг на модальный (например, $('. Stripe-app')) из-за той же политики происхождения.
Любые альтернативные идеи?
Мой код ниже, адаптирован из https://stripe.com/docs/checkout.
// custom Stripe checkout button with custom overlay to avoid UI confusion during payment processing
$('.btn-stripe').click(function(){
var token = function(res){
var $input = $('<input type=hidden name=stripeToken />').val(res.id);
$('.form-stripe').append($input).submit();
};
StripeCheckout.open({
key: STRIPE_KEY,
address: false,
amount: STRIPE_AMT,
currency: 'usd',
name: 'Purchase',
description: STRIPE_DESC,
panelLabel: 'Checkout',
token: token
});
$('.cover-all').show();
return false;
});