Показать сообщение отдельно
  #25 (permalink)  
Старый 09.12.2019, 00:15
Аспирант
Отправить личное сообщение для svileff Посмотреть профиль Найти все сообщения от svileff
 
Регистрация: 25.11.2019
Сообщений: 39

Я почти дописал весь скрипт. Но есть небольшие недочеты. Помогите пожалуйста. Не могу решить некоторые проблемы...
<script>
    $( document ).ready(function() {
var num = 0;
var firsttime = true;
//Следим за изменением суммы товаров
     $(".t706__cartwin-prodamount").bind( 'DOMSubtreeModified',function() {
    //Получаем сумму товара
    var productsum = window.tcart.prodamount;
    num++;    
//Если сумма товара от 1000 до 5000, то промо код выдаёт
if ( ( productsum > 1000) && ( productsum < 5000) ){
    $('.t-inputpromocode__wrapper').removeClass("promo-kod");
} else {
    $('.t-inputpromocode__wrapper').addClass("promo-kod");
};
//Если сумма товара больше 7000, то выдаём скидку 
 if (  (num == 2 || firsttime )  && (productsum > 7000) ){
        function numberWithCommas(str) {
            return (+str).toFixed(0).replace(/(\d+)(\.\d+)?/g, function(c, b, a) {
                return b.replace(/(\d)(?=(\d{3})+$)/g, "$1 ") + (a || "")
            })
        }
        // Добавляем скидку к каждому товару
        $(".t706__product-amount.t-descr.t-descr_sm").each(function(i, el) {
            $(el).next(".t706__product-amount-sale").remove();
            var nums = (el.textContent.replace(/[^0-9.]/g, "") || 0) * .85;
            var txt = numberWithCommas(nums);
            $(el).after('<div class="t706__product-amount-sale t-descr t-descr_sm">' +
            txt + "&nbsp;\u0440.</div>");
            $(".t706__product-amount.t-descr.t-descr_sm").addClass("sum");
        })
    //Получаем итоговую сумму
    var allsum = window.tcart.amount;
    //Вычитаем 15% от суммы товаров
    var mydisc = productsum*0.15;
    //Корректируем итог на скидку товара
    window.tcart.amount = allsum - mydisc;
    var prodsumWdisc = productsum - mydisc;
    var prodamoun = numberWithCommas(window.tcart.amount);
    //Выводим надпись итоговой суммы в корзину 
    $(".t706__cartwin-prodamount").html(prodamoun + ' р.');
    //Выводим надпись итоговой суммы в корзину 
    $(".t706__cartwin-totalamount").html(window.tcart.amount);
    window.tcart.prodamount = window.tcart.prodamount + ' р;<br> Скидка составила: ' + mydisc + ' р;<br> Сумма товара с учётом скидки: ' + prodsumWdisc;
    //Создаём надпись для скрытых полей
    $("[name='yourdiscount']").val(mydisc);
    $("[name='minusdiscount']").val(prodsumWdisc);
    num=0; firsttime = false;
}; if ( num >= 2 ){ num = 0};});  }); 
</script>


1. Когда достигаю суммы 7000 выводит скидку, а когда уменьшаю сумму скидка остается.
2. В самой корзине нажимая на + - изменяется цена, а скидка изменяется но не вся. Первые 3 ряда не меняются. Не могу найти причину.

То что получилось https://lowo.store/all

Последний раз редактировалось svileff, 09.12.2019 в 00:51.
Ответить с цитированием