Показать сообщение отдельно
  #4 (permalink)  
Старый 09.05.2021, 22:28
Новичок на форуме
Отправить личное сообщение для Janejane Посмотреть профиль Найти все сообщения от Janejane
 
Регистрация: 09.05.2021
Сообщений: 9

Я добавила сравнение с балансом, который равен для данного примера 250 и, если сумма выбранного товара меньше либо равно 250, то эта сумма будет видна зеленым цветом, а если же она больше 250, то красного цвета.
Мне почему-то не удалось вставить возможность, что если ничего не выбрано и текст равен "My Card Price", то чтобы он был виден черным текстом.

balance=250;
            if (sum <= balance) {
                    mycard = document.getElementById("mycard");
                    mycard.style.color = 'green';
            } else if (sum > balance) {
                    mycard = document.getElementById("mycard");
                    mycard.style.color = 'red';
            } else if (sum === "My Card Price") { ............................................ ??? здесь явно не то пишу, что надо и тем более, проверка не доходит до этого места
                    mycard = document.getElementById("mycard");
                    mycard.style.color = 'red';
            }




document.addEventListener("DOMContentLoaded", function() {
            const on = (parent, event, selector, handler) => parent.addEventListener(event, ({
                target
            }) => {
                if (target = target.closest(selector)) handler(target)
            });
            const fn = el => {
                el.parentNode.classList.toggle("add");
                const sum = -[...document.querySelectorAll(".row .add .price")
                ]
                .reduce((accumulator, { textContent }) => accumulator - textContent, 0);
            balance=250;
            if (sum <= balance) {
                    mycard = document.getElementById("mycard");
                    mycard.style.color = 'green';
            } else if (sum > balance) {
                    mycard = document.getElementById("mycard");
                    mycard.style.color = 'red';
            } 
                document.querySelector("#mycard").textContent = sum ? sum : "My Card Price"; 
            };
            on(document, "click", ".column button", fn);
        });
Ответить с цитированием