问题: 如何使用minicart.js脚本显示用户购物车中的商品数量?
背景故事: 我正在开发一个静态HTML网站,该网站使用标准PayPal按钮销售少量产品并minicart.js
我想在我的网站标题中显示一个区域,该区域显示当前在"购物车"中的项目数量,但我无法弄清楚如何操作。在minicart.js网站上没有详细说明此功能的示例。
我确信可以做到,但我不知所措。任何帮助将不胜感激。谢谢!
答案 0 :(得分:0)
我设法通过minicart.js找到必要的变量集然后通过jQuery操作来找到一种方法来实现我正在寻找的东西。
minicart.js给出了以下变量,它输出当前的购物车总数:
paypal.minicart.cart.total();
然后我接受了这个变量,并应用了一些jQuery,将这个变量转换为一个名为“cartTotal”的单独变量,每当用户在页面上进行交互时(即点击或按键),都会检查并更新该变量。我发现需要短暂的延迟才能使一切正常工作。有趣的是,按键检查需要比鼠标点击更长的延迟。
我的最终(现在)工作代码如下:
$( document ).ready(function() {
var cartTotal = paypal.minicart.cart.total();
$('input#cart').val('$' + cartTotal);
$( "body" ).click(function() {
setTimeout(function() { // Setting slight delay on function to accomodate for button push of removing items from cart
var cartTotal = paypal.minicart.cart.total();
$('input#cart').val('$' + cartTotal);
}, 100);
});
$( "body" ).keypress(function() {
setTimeout(function() { // Setting longer delay on function to accomodate for key push of removing items from cart
var cartTotal = paypal.minicart.cart.total();
$('input#cart').val('$' + cartTotal);
}, 900);
});
答案 1 :(得分:0)
您可以这样获得:
paypal.minicart.cart.items().length
对我有用