我想中断Ecwid结帐流程,收集一些额外信息,然后转到结账处并将额外信息填入Notes字段,然后继续正常结账。
因此,为了尝试第一部分,我试图使用Javascript API来替换结帐按钮。我添加了这段代码:
Ecwid.OnPageLoaded.add(function(page) {
console.log(page.type);
if (page.type == 'CART') {
$button = $('div.ecwid-productBrowser-cart-checkoutButton');
$parent = $button.parent();
$button.hide();
$('<button>Delivery Options</button>').appendTo($parent);
}
});
(是的,我稍后会将按钮更改为链接)。代码完成了您的预期,它找到了“Checkout”按钮,并添加了我的按钮。然而,不到一秒钟之后,有些东西会改变它。我无法遵循他们的代码逻辑,因为他们已经很好地混淆了它,所以我不确定他们正在做什么,但似乎涉及一些jsonp的东西来向DOM注入小脚本。
我可以设置一个计时器并在它们改回之后将其放回去,但我正在寻找更清洁的东西。有没有我可以使用的活动?