gpt4 book ai didi

javascript - Stripe 似乎创建了弹出窗口,但在移动设备上将其关闭

转载 作者:搜寻专家 更新时间:2023-11-01 04:36:04 24 4
gpt4 key购买 nike

我正在使用 Stripe Checkout,桌面上的弹出窗口一切正常。当我在移动设备上查看网站时(特别是 vanilla Android 4.3 上的 Chrome,也在 Opera for Android 上尝试过类似结果),弹出窗口似乎打开了一秒钟但随后关闭。我从来没有看到它,它也不在另一个打开的选项卡中。

我读过 this documentation并且我的代码是合规的。

这是我正在使用的 JavaScript:

$(document).ready(function() {

//The actual giving part
$('a.payamount').click(function(e) {

window.amountToGive = $(this).data('amount');

// Open Stripe Checkout with further options
stripeHandler.open({
name: campaignName,
description: 'Give $' + (window.amountToGive / 100) + ' to ' + campaignName,
amount: window.amountToGive
});
});

var stripeHandler = StripeCheckout.configure({
key: 'mykeygoeshere',
image: '/img/g.png',
locale: 'auto',
token: function(token) {
//Add campaign info
token['campaign_id'] = campaignId;
token['amount'] = window.amountToGive;

postStripeData(token);
}
});

// Close Checkout on page navigation
$(window).on('popstate', function() {
stripeHandler.close();
});
});

function postStripeData(token) {
showLoadingModal();
$.ajax({
method: 'POST',
url: postStripeDataUrl,
data: token
})
.always(function(data_jqXHR, textStatus, jqXHR_errorThrown) {
if (textStatus.indexOf('error') == -1) {
//POST'ed ok
console.log(data_jqXHR);
window.location.href = data_jqXHR;
} else {
alert('Error while posting!');
}
});
}

我正在使用 https://checkout.stripe.com/checkout.js

我已经尝试通过 Chrome 开发者工具对此进行调试,您可以在其中看到 Android 日志,并且未显示任何错误。

最佳答案

经过一段时间的调试,似乎缺少的是点击函数中的 e.preventDefault();:

$('a.payamount').click(function(e) {
e.preventDefault();
//... rest of code

关于javascript - Stripe 似乎创建了弹出窗口,但在移动设备上将其关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33061090/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com