使用iFrame表格后,iPhone数字键盘不断弹出(iOS Safari)

时间:2017-12-28 23:20:48

标签: javascript ios reactjs mobile-safari stripe-payments

我们的React Web应用程序使用Stripe元素表单进行结帐(有关详细信息,请参阅here)。它将iFrame表单注入网站。正如所料,在iOS Safari上使用该网站时,当用户专注于Stripe输入时,会弹出信用卡键盘。

但事情出了问题。首先,如果用户点击页面上的其他位置,则键盘保持向上。不是一个大问题,因为你可以点击完成'解雇键盘。

但随后 - 当用户点击网站时,任何时候都会弹出键盘。点击完成'没有做任何事 - 在下一次点击时,它会再次弹出。在用户关注另一个输入字段后,它最终会停止。

当React组件卸载时,我尝试在Stripe元素上手动调用blur(),但没有运气。令人难以置信的是,您可以使用Xcode模拟器复制此问题。 h * ck正在发生什么?

1 个答案:

答案 0 :(得分:0)

您是否有机会在iOS上使用Firefox?

我只是遇到了这个问题:我会单击一个输入框,然后在键盘上单击“ x”或“完成”,然后每当我单击其他任何位置时,键盘都会弹出。

模拟它的代码在这里

<!doctype html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
  </head>
  <body>
    <div>
      <input value="hiya">
    </div>
    <div>Click here after clicking the input and the keyboard will come back.</div>
  </body>

</html>

在Safari或Chrome上不会发生。