При переходе на другую страницу открытая секция аккордеона должна оставаться открытой
Есть меню каталога, которое выводится из базы скриптом:
<ul class="menu"> <li><a class="" href="/cathegory/item/85">Экскаваторы</a> <ul class="menu"> <li><a class="" href="/cathegory/item/86">Гусеничные экскаваторы</a></li> <li><a class="" href="/cathegory/item/87">Колесные экскаваторы</a></li> <li><a class="activeLeft" href="/cathegory/item/88">Мини - экскаваторы</a></li> </ul> </li> <li><a class="" href="/cathegory/item/89">Погрузчики</a> <ul class="menu"> <li><a class="" href="/cathegory/item/90">Фронтальные погрузчики</a></li> <li><a class="" href="/cathegory/item/91">Телескопические погрузчики</a></li> </ul> </li> <li><a class="" href="/cathegory/item/92">Карьерная техника</a> <ul class="menu"> <li><a class="" href="/cathegory/item/93">Экскаваторы</a></li> <li><a class="" href="/cathegory/item/94">Самосвалы</a></li> </ul> </li> </ul> как сделать так, чтобы при переходе на страницу подраздела, например /cathegory/item/93, соответствующий раздел в товарном меню оставался открытым? пример находится по адресу:http://technika.zerna.ru/ Спасибо |
Вобще, это должен делать сервер. Скрипт на js будет костылем.
Костыль реализуется так: проходим по всем ссылкам в меню (циклом или через each), сравниваем с location.href. Нашли нужную ссылку - триггерим клик по родительскому li, или по самой ссылке, в зависимости от реализации аккордиона. Хотя не, подождите. Ща прибежит какая нибудь обезьянка и набросает вам готовый код :) |
да, да, мне бы код готовый, не силен я в js
у меня сейчас вот этот: function initMenu() { $('.menu ul').hide(); $('.menu ul:first').hide(); $('.menu li a').click( function() { var checkElement = $(this).next(); if((checkElement.is('ul')) && (checkElement.is(':visible'))) { return false; } if((checkElement.is('ul')) && (!checkElement.is(':visible'))) { $('.menu ul:visible').slideUp('normal'); checkElement.slideDown('normal'); return false; } } ); } $(document).ready(function() {initMenu();}); что в него нужно добавить, как изменить? |
Цитата:
[js] тут код [/js]? |
function initMenu() { $('.menu ul').hide(); $('.menu ul:first').hide(); $('.menu li a').click( function() { var checkElement = $(this).next(); if((checkElement.is('ul')) && (checkElement.is(':visible'))) { return false; } if((checkElement.is('ul')) && (!checkElement.is(':visible'))) { $('.menu ul:visible').slideUp('normal'); checkElement.slideDown('normal'); return false; } } ); } $(document).ready(function() {initMenu();}); чтоб меню работало как на сайте thgr.ru |
Ну теперь все ок, осталось дождаться какой-нибудь обезьянки )
|
Часовой пояс GMT +3, время: 14:51. |