Если сразу указать этот класс в разметке - псевдоэлемент виден и на странице и в DOM, при добавлении при помощи javascript он не появляется.
Вот скрипт (добавление товара в корзину):
let addToCartBtn = document.querySelector('.js-add2cart');
let cartBtns = document.querySelectorAll(".bcart__button");
let input = document.querySelector(".qty__input");
let plusBtn = document.querySelector(".qty__change--plus");
let minusBtn = document.querySelector(".qty__change--minus");
let products = [
{
name: "Поролон мебельный ST 2236 (1,6х2м) толщина 10мм",
id: 45253,
priceNew: 14500,
priceOld: 53000,
qty: 0
}
];
function activateCart () {
for (let i = 0; i < cartBtns.length; i++) {
cartBtns[i].classList.add(".bcart__button--active");
}
}
function incrementQty() {
plusBtn.addEventListener("click", () => {
input.value = parseInt(input.value) + 1;
});
}
function decrementQty() {
minusBtn.addEventListener("click", () => {
if (input.value > 1) {
input.value = parseInt(input.value) -1;
} else input.value = 1;
});
}
addToCartBtn.addEventListener('click', () => {
qtyChanger();
})
function qtyChanger() {
let productQty= localStorage.getItem('qty');
productQty= parseInt(productQty);
if(productQty) {
localStorage.setItem("qty", productQty + parseInt(input.value));
} else {
localStorage.setItem("qty", input.value);
activateCart()
}
}
function onLoadProductQty() {
let productQty = localStorage.getItem("qty");
if(productQty) {
activateCart()
}
}
onLoadProductQty();
incrementQty();
decrementQty();
А это тот самый класс:
.bcart__button--active::after {
content: "";
border: 2px solid #fff;
border-radius: 50%;
display: block;
height: 0.75rem;
width: 0.75rem;
position: absolute;
top: 50%;
right: 50%;
transform: translate(125%, -110%);
}