iOS和Android浏览器的mobile Safari上的JavaScript SDK::FB.ui()和弹出框

iOS和Android浏览器的mobile Safari上的JavaScript SDK::FB.ui()和弹出框,javascript,facebook,facebook-javascript-sdk,Javascript,Facebook,Facebook Javascript Sdk,现在我正在用JavaScript SDK实现Facebook信用功能。 我一直在使用“FB.ui({method:'pay',…},callback)”,现在它工作得很好 当我在iPhone或Android等移动网站上使用FB.ui函数和“pay”方法时,它会尝试打开另一个用于支付对话框的弹出窗口 但众所周知,iPhone或Android浏览器在默认情况下会阻止弹出窗口,所以如果我们想使用这种FB.ui支付方法,我们必须在设置中关闭弹出窗口 有没有办法不为付款对话框打开另一个弹出窗口?解决方案是

现在我正在用JavaScript SDK实现Facebook信用功能。 我一直在使用“FB.ui({method:'pay',…},callback)”,现在它工作得很好

当我在iPhone或Android等移动网站上使用FB.ui函数和“pay”方法时,它会尝试打开另一个用于支付对话框的弹出窗口

但众所周知,iPhone或Android浏览器在默认情况下会阻止弹出窗口,所以如果我们想使用这种FB.ui支付方法,我们必须在设置中关闭弹出窗口


有没有办法不为付款对话框打开另一个弹出窗口?

解决方案是将调用FB.ui的代码放入按钮的onclick属性中。就像facebook web app hackbook一样:

(在浏览器中的弹出窗口中打开此窗口,然后单击信用页面中的“提示付款”)

以下是“提示付款”按钮的html代码:

提示付款
以下是浏览器不阻止此类弹出窗口的原因:


解决方案是将调用FB.ui的代码放在按钮的onclick属性中。就像facebook web app hackbook一样:

(在浏览器中的弹出窗口中打开此窗口,然后单击信用页面中的“提示付款”)

以下是“提示付款”按钮的html代码:

提示付款
以下是浏览器不阻止此类弹出窗口的原因:


这个答案被低估了这个答案被低估了
<div id="publish_button" class="button" onclick="sendPay()">Prompt to Pay</div>