Safari将PayPal iframe视为弹出窗口

时间:2018-11-02 22:31:35

标签: ios macos iframe safari popup

我正在使用PayPal网站Payments Pro HTML嵌入代码在我的网站上结帐,并且我注意到iOS上的Safari完全阻止了iframe的加载,我看到的是iframe应该位于的空白区域。

调查之后,我意识到它会将框架当作弹出窗口,而Safari会将其作为默认设置。我启用了弹出窗口,然后再次尝试,当页面加载“此站点正在尝试打开弹出窗口”时,Safari提醒我。允许它确实会打开一个新标签。

在其他任何浏览器(例如Chrome或Firefox)中,我都没有这种行为,即使弹出窗口被阻止,iframe也可以正常加载。

我在macOS Safari上尝试过,并且存在相同的行为,但是您确实获得了更多的视觉反馈,允许我单击并允许。

    <iframe name="hss_iframe" id="paypal-iframe" height="540px" width=100%" style="border: none; max-width: 100%; margin:0;padding:0"></iframe>

    <form style="display:none" target="hss_iframe" name="form_iframe" method="post"
            action="https://securepayments.paypal.com/webapps/HostedSoleSolutionApp/webflow/sparta/hostedSoleSolutionProcess">
        <input type="hidden" name="cmd" value="_hosted-payment">
        <input type="hidden" name="subtotal" value="XXXX">
        <input type="hidden" name="currency_code" value="GBP">
        <input type="hidden" name="business" value="XXXXXXXXXXXX">
        <input type="hidden" name="paymentaction" value="sale">
        <input type="hidden" name="template" value="mobile-iframe">
        <input type="hidden" name="solution_type" value="Sole">
        <input type="hidden" name="return" value="XXXX">
    </form>

    <script>
        document.form_iframe.submit();
    </script>

谢谢

0 个答案:

没有答案