Javascript 自定义条带签出按钮未在手机上打开窗口

Javascript 自定义条带签出按钮未在手机上打开窗口,javascript,stripe-payments,Javascript,Stripe Payments,我知道有关处理程序的问题。由于浏览器弹出窗口阻止程序,请在除单击事件以外的任何事件中打开,但请查看我正在使用的以下代码: HTML <button type="button" data-stripe data-image="/path/to/image.jpg">The button</button> 我在控制台中得到的错误如下: 条带签出无法打开新窗口,可能是由于 弹出窗口拦截器。要为用户提供最佳体验,请遵循 导游在 如果我读了指南,我就看不出我做错了什么 有没有办

我知道有关
处理程序的问题。由于浏览器弹出窗口阻止程序,请在除单击事件以外的任何事件中打开
,但请查看我正在使用的以下代码:

HTML

<button type="button" data-stripe data-image="/path/to/image.jpg">The button</button>
我在控制台中得到的错误如下:

条带签出无法打开新窗口,可能是由于 弹出窗口拦截器。要为用户提供最佳体验,请遵循 导游在

如果我读了指南,我就看不出我做错了什么


有没有办法解决这个问题?谢谢。

您能澄清一下这是什么吗
form.querySelector(“[数据条带]”)
Sorry yes;这只是一个按钮。你能澄清一下这是什么吗
form.querySelector(“[数据条带]”)
Sorry yes;只需要一个按钮。
export function paymentScreen(form, response) {

  const restaurant = form.querySelector('[name="restaurant"]').value,
    guests = form.querySelector('[name="guests"]').value,
    time = form.querySelector('[name="time"]').value.split(':').slice(0, 2).join(':'),
    email = form.querySelector('[name="email"]').value,
    stripe = form.querySelector('[data-stripe]');

  const handler = window.StripeCheckout.configure({
    key: response.StripePublishableKey,
    name: `Dim t - ${restaurant}`,
    description: `Booking for ${guests} guests at ${time}`,
    amount: parseInt(response.PaymentAmount, 10),
    email: email,
    currency: 'GBP',
    locale: 'auto',
    token(stripeResponse) {
      stripePaymentProcess(form, response, stripeResponse);
    }
  });

  // This part fails, even though we're in a click event listener.
  stripe.addEventListener('click', function (e) {
    handler.open({
      image: this.dataset.image,
      zipCode: false
    });
  });
}