我希望你一切都好。最近,我在修改删除侧边栏购物车的弹出窗口后遇到了代码问题。现在的问题是,当使用快速添加按钮将商品添加到购物车时,计数器不再增加。奇怪的是,计数器仅反映我刷新页面时添加的正确项目数,而在我更改代码之前情况并非如此。 如果有人能帮助我解决这个问题,我将非常感激。下面是我用来删除弹出窗口的修改后的代码:
function onQuickBuyButtonClicked(id, pro_id) {
const CartCount = document.getElementsByClassName('Header__CartCount')[0];
$(".loader_" + id).addClass("add-success--adding");
const product = {
id: id,
quantity: 1
};
$.ajax({
type: 'POST',
url: '/cart/add.js',
data: JSON.stringify(product),
dataType: 'json',
headers: {
'Content-Type': 'application/json'
},
success: function(cart) {
setTimeout(function() {
$(".loader_" + id).removeClass("add-success--adding");
$(".loader_" + id).addClass("add-success--added");
// cartRecommended(pro_id);
}, 500);
/*
setTimeout(function() {
document.dispatchEvent(new CustomEvent('product:added', {
bubbles: true,
detail: {
variant: cart,
quantity: 1
}
}));
}, 1200);
*/
setTimeout(function() {
$(".loader_" + id).removeClass("add-success--adding").removeClass("add-success--added");
}, 1600);
setTimeout(function() {
// $('#backdrop').addClass('backdrop_active');
}, 2000);
},
error: function(errorThrown) {
$(".loader_" + id).removeClass("add-success--adding");
var r = jQuery.parseJSON(errorThrown.responseText);
$(".error_" + pro_id).html("Error: " + r.description).show();
setTimeout(function() {
$(".error_" + pro_id).html("").hide(100);
}, 3000);
}
});
return false;
}
非常感谢您的帮助!