Перейти к содержанию
dm82

[РЕШЕНО] мини корзина - прятать по клику

Рекомендуемые сообщения

Друзья, подскажите плиз, можно ли как-то сделать, чтобы стандартная мини корзина (1.5.4.1)

исчезала по клику (как и открытие), а не по фокусу мыши?

Когда такая возмоность есть, насколько это сложно реализовать, и где вообще это все находится, может там какие настройки есть..

Спасибо!!!

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

catalog/view/javascript/coommon.js

 

Найдите

/* Ajax Cart */
$('#cart > .heading a').live('click', function() {
   $('#cart').addClass('active');
 
  $('#cart').load('index.php?route=module/cart #cart > *');
 
  $('#cart').live('mouseleave', function() {
     $(this).removeClass('active');
  });
});
Удалите строки (это событие, когда курсор мышки покидает мини корзину)

 $('#cart').live('mouseleave', function() {
$(this).removeClass('active');
Чтобы сделать по клику на этой же мини корзине, добавте после

  });

});

$('#cart > .content').live('click', function() {
$(this).parent().removeClass('active');
});

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
То что нужно! Спасибо Огромное!!

 

Немного изменил, что бы убиралось не по клику на содержании, а на той же шапке, по которой и открывается:

 



$('#cart.active > .heading').live('click', function() {
$(this).parent().removeClass('active');
});



РЕШЕНО!!!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

добавил еще условие - убирать корзину по клику вне ее, на сегодня это уже стандарт

	$(document).click(function(e){
    if ($(e.target).parents().filter('#cart:visible').length != 1) {
        $('#cart').removeClass('active');
    }
	});

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Работает, спасибо всем.

 

Только одно небольшое уточнение - было написано:

 

catalog/view/javascript/coommon.js

 ....

 

Удалите строки (это событие, когда курсор мышки покидает мини корзину)

 $('#cart').live('mouseleave', function() {
$(this).removeClass('active');
Чтобы сделать по клику на этой же мини корзине, добавте после

  });

});

$('#cart > .content').live('click', function() {
$(this).parent().removeClass('active');
});
 

Там одна пара скобок лишняя (помечено красным и зачеркнуто).

Еше раз спасибо AlexShurik и dm82 за решение.

Must be в стандартном пакете.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Похожий контент

    • От Rostislav2
      Добрый день.
      Подскажите, пожалуйста, как добавить + / - в мини корзину, с автообновлением ajax ??? ОС2.3
    • От kukol
      Есть проблема, при добавлении товара в козину, в всплывающем <div class="mini-cart-info"> пишет что корзина пуста, чтобы товар там появился нужна перезагрузка страницы. Я так понимаю чтобы он появлялся там сразу нужен ajax запрос get. Куда его лучше прописать, и т.к. до конца не силен в этом вопросе, его нужно посылать при возникновения события - нажатие кнопки купить, или к примеру когда total товара > 1. Или есть другое решение? Спасибо.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.