Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Иконка Корзины то есть то нет


Gamburg

Recommended Posts

Добрый день, появилась проблема - есть изображение корзины, рядом вывод количества в кружке (рис.1), после добавления товара, изображение корзины пропадает, кружок с количеством виден и обновился до единицы (рис.2), после перезагрузки, появляется изображение корзины, кружок с единицей тоже виден (рис.3).

Нажимаем на изображение корзины открывается маленькое окно с добавленным товаром, удаляем товар, пропадает изображение корзины, кружок с количеством виден и обновился до нуля (рис.4), перезагружаем страницу, видим изображение корзины, кружок с количеством нуль тоже виден (рис.1).

Помогите разобраться где я мог допустить ошибку - вывод изображения корзины с добавленным товаром и почему нужна перезагрузка страницы для появления изображения корзины?.

1) error01.jpg.127c9f3bb216a7821f7a45078de0e732.jpg

2) error02.jpg.18ee0f38dab92f78f305d55079e4e81e.jpg

3) error022.jpg.0aab05cea9f9c707a2c6142f3ff59192.jpg

4) error03.jpg.2369daa922ff49d7857c21619b508c6e.jpg

Надіслати
Поділитися на інших сайтах


скорее всего нужно смотреть, что там происходит при добавлении товара в корзину ( add - при добавлении товара в корзину) и при обновлении (update) 

Змінено користувачем sasha3337774
Надіслати
Поділитися на інших сайтах

Вот HTML код корзины:

  <button type="button" data-toggle="dropdown" data-loading-text="Загрузка..." class="btn btn-inverse btn-block btn-lg dropdown-toggle">
    <span id="cart-total">0</span>
    <span class="cart-icon"></span>
  </button>

 

где:

<span class="cart-icon"></span>

изображение корзины

 

после добавления товара:

  <button type="button" data-toggle="dropdown" data-loading-text="Загрузка..." class="btn btn-inverse btn-block btn-lg dropdown-toggle">
    <span id="cart-total">0</span>
  </button>

 

т.е. <span class="cart-icon"></span> 

отсутствует

---------------------------------------------------

common.js

// Cart add remove functions
var cart = {
    'add': function(product_id, quantity) {
        $.ajax({
            url: 'index.php?route=checkout/cart/add',
            type: 'post',
            data: 'product_id=' + product_id + '&quantity=' + (typeof(quantity) != 'undefined' ? quantity : 1),
            dataType: 'json',
            success: function(json) {
                if (json['redirect']) {
                    location = json['redirect'];
                }

                if (json['success']) {
                     $.notify({
                         message: json['success'],
                         target: '_blank'
                     },{
                         // settings
                         element: 'body',
                         position: null,
                         type: "info",
                         allow_dismiss: true,
                         newest_on_top: false,
                         placement: {
                             from: "top",
                             align: "center"
                         },
                         offset: 0,
                         spacing: 10,
                         z_index: 2031,
                         delay: 5000,
                         timer: 1000,
                         url_target: '_blank',
                         mouse_over: null,
                         animate: {
                             enter: 'animated fadeInDown'
                             //exit: 'animated fadeOutUp'
                         },
                         onShow: null,
                         onShown: null,
                         onClose: null,
                         onClosed: null,
                         icon_type: 'class',
                         template: '<div data-notify="container" class="col-xs-11 col-sm-3 alert alert-success" role="alert">' +
                             '<button type="button" aria-hidden="true" class="close" data-notify="dismiss">&nbsp;&times;</button>' +
                             '<span data-notify="message"><i class="fa fa-check-circle"></i>&nbsp; {2}</span>' +
                             '<div class="progress" data-notify="progressbar">' +
                                 '<div class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" style="width: 0%;"></div>' +
                             '</div>' +
                             '<a href="{3}" target="{4}" data-notify="url"></a>' +
                         '</div>' 
                     });

                    $('#cart > ul').load('index.php?route=common/cart/info ul li');
                          $('#cart > button').html('<span id="cart-total">' + json['total'] + '</span>');
                        
                }
            }
        });
    },
    'update': function(key, quantity) {
        $.ajax({
            url: 'index.php?route=checkout/cart/edit',
            type: 'post',
            data: 'key=' + key + '&quantity=' + (typeof(quantity) != 'undefined' ? quantity : 1),
            dataType: 'json',
            success: function(json) {
                if (getURLVar('route') == 'checkout/cart' || getURLVar('route') == 'checkout/checkout') {
                    location = 'index.php?route=checkout/cart';
                } else {
                    $('#cart > ul').load('index.php?route=common/cart/info cart_prod');
                                        $('#cart > button').html('<span id="cart-total">' + json['total'] + '</span>');
                }
            }
        });
    },

 

Змінено користувачем Gamburg
Надіслати
Поділитися на інших сайтах


Как я понимаю здесь:

$('#cart > button').html('<span id="cart-total">' + json['total'] + '</span>');

 

конкретно

' + json['total'] + '

Добавляет количество

 

может надо добавить здесь изображение корзины

<span class="cart-icon"></span> 

 

к примеру:

 

$('#cart > button').html('<span id="cart-total">' + json['total'] + '</span><span class="cart-icon"></span>');

Змінено користувачем Gamburg
Надіслати
Поділитися на інших сайтах


вот пример с иконкой fa-fa:

Спойлер

$('#cart > button').html('<span id="cart-total"><i class="fa fa-shopping-cart"></i> ' + json['total'] + '</span>');


по идеи нужно сделать по аналогии с картинкой, но это не точно 

Надіслати
Поділитися на інших сайтах

1 hour ago, sasha3337774 said:

вот пример с иконкой fa-fa:

  Reveal hidden contents

$('#cart > button').html('<span id="cart-total"><i class="fa fa-shopping-cart"></i> ' + json['total'] + '</span>');


по идеи нужно сделать по аналогии с картинкой, но это не точно 

 

К сожалению без изменений

Надіслати
Поділитися на інших сайтах


15 минут назад, Gamburg сказал:

К сожалению без изменений

можно ссылку на сайт?

Надіслати
Поділитися на інших сайтах

Спасибо всем, всё заработало

 

Добавил в common.js

в add,

в update.

в remote

<span class="cart-icon"></span>  

изображение корзины

 

далее в product.twig

нашёл похожую конструкцию как в common.js

и тоже добавил 

<span class="cart-icon"></span>  

изображение корзины

 

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.