Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 10 Ответов
  • 1243 Просмотров
*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
Доброго времени форумчане, нужна ваша помощь, модуль mod_jshopping_categories переделан в аккордеон меню категорий, после разворачивания одной из категорий первого уровня и клика по категории второго уровня, страница открывается (перегружается) с выбранной категорией, но меню схлопывается.

default.php
Спойлер
[свернуть]

theme.js
Спойлер
[свернуть]





« Последнее редактирование: 09.10.2017, 11:42:14 от onelawyer »
*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
на сколько я понимаю, у вас скрипт такой, что отрытой может быть только одна категория.
а в php у вас безусловно, вне зависимости от активного дочернего пункта, всегда открыта Сантехника, если я правильно понял.
Код
if($curr->category_id == 2) $class = 'b-menu_item_top_top';

попробуйте закомментировать её
*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
Да, всё верно, именно категория первого уровня Сантехника должна быть изначально развёрнута, но после перехода в другой раздел, например, Аксессуары после перезагрузки страницы этот раздел должен быть остаться развёрнутым, закомментировать: if($curr->category_id == 2) $class = 'b-menu_item_top_top';  это к сожалению не решит проблему, т.к. есть ещё <?php if($curr->category_id == 2) echo 'active'; ?>" <?php if($curr->category_id != 2) echo 'style="display:none;"'; ?>
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
ну вы как-то жестоко ломаете всю логику аккордеона.
смысл в том, что должен быть только 1 активный пункт.

так что логику надо было в js перенести.

убирайте все свои доделки, оставьте чистый свернутый аккордеон.
дальше через js делаете проверку после загрузки страницы.

если в меню есть пункт с parent-active, то делаем его родителя активным и вызываем развертывание.

если такого пункта нет, то делаем активным пункт Сантехника и раскрываем его.

*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
Спасибо, за то что указали правильное направление, почему-то у меня data-id забирает 2

Спойлер
[свернуть]
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
*

onelawyer

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
Решил проблему:

Код
        $("ul.b-menu").find("ul.b-menu_subcat > li.parent-active").parent().addClass('active').css({ 'display': 'block' });

        $(function() {
            var url = "http://u227186.s32.wh1.su/"
            if (window.location.href == url) {
                $('ul.b-menu_subcat_2').addClass('active').css({ 'display': 'block' });
            };
            console.log(url);
        });
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
ну это вряд ли кому-то полезно будет.
лучше соберите интсаллятор и запостите в раздел "расширения форумчан" - симпатично выглядит, может кому и приглянется  ;)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывод таблицы, деление на страницы

Автор March Cat

Ответов: 6
Просмотров: 831
Последний ответ 09.01.2019, 18:49:15
от dmitry_stas
Проблема с модулем после переноса с локалки на хостинг

Автор master-smeta

Ответов: 8
Просмотров: 2240
Последний ответ 15.11.2018, 16:34:46
от master-smeta
По ID'у пункта меню получить ссылку для перехода

Автор GRIG

Ответов: 4
Просмотров: 2555
Последний ответ 08.05.2017, 17:13:05
от Aleks.Denezh
Как вставить модуль в код нужной страницы php?

Автор zvi

Ответов: 7
Просмотров: 3396
Последний ответ 12.04.2016, 19:36:55
от AlekVolsk
Модуль. Сообщение о включенном AdBlock. Как отпустить Javascript в низ страницы?

Автор cartgen

Ответов: 2
Просмотров: 1513
Последний ответ 19.08.2015, 23:42:16
от palexa