Открытие категории товаров по клику?

Всем привет.
Такой вопросик, у меня в категории товаров еще куча подкатегорий..
Чтобы быть конкретным речь идет о магазине автозапчастей.. и вот чтобы выбрать например запчасть или расходник "на нужный автомобиль и нужную модель" нужно несколько раз кликать.
Как сделать чтобы категории товаров открывалась только по клику на нужнуу категорию?
Тоесть например у БМВ несколько моделей и потом куча моторизаций и оно показывает полностью все дерево категории товаров :(((

Пример проблемы в скриншоте

Заранее спасибо

Вот скрипт, который должен вам помочь. Только пропишите свой селектор меню:


<script>
     // Portions of this were adapted from "http://www.i-marco.nl/weblog/jquery-accordion-menu/".
    // It only went one level deep.
    // This now accounts for more levels of accordion.
     
    $(document).ready( function($) {
     
    // This hides all the sub menus on page load
    $('#nav-main ul.sub-menu').hide();
    // This makes sure that all the sub menus are open when applicable
    $('#nav-main li.current-menu-item').children().show();
    // This keeps the nav open to the item that you are navigating to.
    $('#nav-main li.current-menu-item').parents().show();
     
    $('#nav-main ul li a').click(
    function() {
    var checkElement = $(this).next();
    if((checkElement.is('ul')) && (checkElement.is(':visible'))) {
    return false;
    }
    if((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
    $(this).parent().siblings("li:has(ul)").find("ul").slideUp('normal');
    $('#nav-main ul ul li ul:visible').slideUp('normal');
    checkElement.slideDown('normal');
    return false;
    }
    }
    );
    $('#nav-main ul ul li a').click(
    function() {
    var checkElement = $(this).next();
    if((checkElement.is('ul')) && (checkElement.is(':visible'))) {
    return false;
    }
    if((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
    $('#nav-main ul ul').slideUp('normal');
    $('#nav-main ul ul li ul:visible').slideUp('normal');
    checkElement.slideDown('normal');
    return false;
    }
    }
    );    
     
    });
</script>

Спасибо огромное.
Забыл дополнить, я вчера с хэдэрным меню разобрался.. там по наводу курсором сразу открывается.
А вот с сайдбаром траблы..
Я завтра попробую, еще раз СПАСИБО!

Вот скрипт, который должен вам помочь. Только пропишите свой селектор меню:


<script>
     // Portions of this were adapted from "http://www.i-marco.nl/weblog/jquery-accordion-menu/".
    // It only went one level deep.
    // This now accounts for more levels of accordion.
     
    $(document).ready( function($) {
     
    // This hides all the sub menus on page load
    $('#nav-main ul.sub-menu').hide();
    // This makes sure that all the sub menus are open when applicable
    $('#nav-main li.current-menu-item').children().show();
    // This keeps the nav open to the item that you are navigating to.
    $('#nav-main li.current-menu-item').parents().show();
     
    $('#nav-main ul li a').click(
    function() {
    var checkElement = $(this).next();
    if((checkElement.is('ul')) && (checkElement.is(':visible'))) {
    return false;
    }
    if((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
    $(this).parent().siblings("li:has(ul)").find("ul").slideUp('normal');
    $('#nav-main ul ul li ul:visible').slideUp('normal');
    checkElement.slideDown('normal');
    return false;
    }
    }
    );
    $('#nav-main ul ul li a').click(
    function() {
    var checkElement = $(this).next();
    if((checkElement.is('ul')) && (checkElement.is(':visible'))) {
    return false;
    }
    if((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
    $('#nav-main ul ul').slideUp('normal');
    $('#nav-main ul ul li ul:visible').slideUp('normal');
    checkElement.slideDown('normal');
    return false;
    }
    }
    );    
     
    });
</script>
Anonymous
Отправить
Ответ на: