【发布时间】:2023-01-28 01:46:02
【问题描述】:
我想隐藏贝宝付款按钮。我正在使用贝宝 Javascript SDK。我知道我可以使用 disable-fundings 来禁用信用卡等等。但是没有paypal的选项。我之前使用自己选择的付款方式。我尝试过使用 jQuery,但它不起作用:
<script>
$( document ).ready(function() {
$( ".paypal-button-row.paypal-button-number-0" ).hide();
});
</script>
paypal 支付按钮由 Javascript SDK 在名为“paypal-button-container”的 div 中呈现。这会创建一个包含所有付款按钮的 iframe。
<div id="buttons-container" class="buttons-container"...
里面是其他带有按钮的div。我想隐藏的按钮是这个 div:
<div class="paypal-button-row paypal-button-number-0 paypal-button-layout-vertical paypal-button-shape-rect paypal-button-number-multiple paypal-button-env-sandbox paypal-button-color-gold paypal-button-text-color-black paypal-logo-color-blue ... ">
我认为首先我必须进入 iframe,然后找到该元素。 目前我正在尝试这个
if ($( "#paypal-button-container" ).contents().find(".paypal-button-row.paypal-button-number-0")) {
console.log("found");
$( ".paypal-button-row.paypal-button-number-0" ).hide();
}
控制台输出“找到”。但它不会隐藏 div。同时,我发现即使使用 .find("abc"),控制台也始终显示“found”。
有任何想法吗?
【问题讨论】:
-
如果不分享更多细节,就不可能告诉你如何做到这一点。但是任何 CSS 选择器火柴您要隐藏的按钮(您目前尚未共享)应该没问题
-
如果你总是想隐藏给定的元素,为什么不为此使用静态 CSS?
-
那太好了。但它不会工作,因为 iframe 来自不同的域。我刚刚尝试了这个:
$("iframe[id*='jsx-iframe']").on('load', function(){ console.log("iframe loaded"); $("iframe[id*='jsx-iframe']").contents().find(".paypal-button-number-0").hide(); });并收到此错误:未捕获的 DOMException:阻止了来源为“...”的框架访问跨域框架。看起来这是不可能的。 -
请通过编辑为您的问题添加所有说明
标签: paypal