Paypal Braintree pop在chrome中被阻止

时间:2018-04-30 06:26:36

标签: javascript jquery paypal braintree

从onReady方法调用时,Paypal Braintree弹出阻止Chrome请求权限。

以下是braintree.setup onready function

    onReady: function(integration) {
      console.log('Braintree is ready');
      checkout = integration;
      enablePaypalBtn();
    }

以下是按钮代码

    <button id="my-button-element" style="visibility:none"></button>
    var checkout;
    document.querySelector('#my-button-element').addEventListener('click', 
    function (event) {
      event.preventDefault();
      checkout.paypal.initAuthFlow();
    }, false);

然而,如果直接调用my-button-element,则会显示来自控制台弹出窗口的单击事件,而不会询问权限。

1 个答案:

答案 0 :(得分:1)

完全披露:我在Braintree工作。如果您有任何其他问题,请随时联系support

Braintree's docs,必须同步调用initAuthFlow作为用户点击事件的结果,否则浏览器会自动阻止PayPal流弹出窗口。您需要将enablePaypalBtn()绑定到用户点击操作。

另外,想提一下Braintree有一个较新的Javascript库v3。如果可以,我建议migrating to the newest version