Разделитель - родитель активного элемента меню-аккордеона

Тема в разделе "PHP программирование", создана пользователем Prefollower, 9 янв 2011.

  1. Prefollower

    Prefollower Гость

    Собсно, мне надо раскрыть аккордеон, но не весь, а чтобы при открытии страницы только родитель активного элемента был раскрыт. Аккордеон при загрузке страницы закрывается так:
    Код (PHP):
    $jQuery(".jjmod-content ul.menu li ul").hide();
    Как добавить условие сюда? Пробовал (...).show(), вставлял и active, и active.parent, и current вместо li ul, но, наверное, что-то не так делаю. Если оставить li ul, то раскрывается все меню целиком. Если вам нужны яваскрипты, скажите, как узнать, какие именно надо.
     
  2. vital

    vital Больной Компом Детектед

    Регистрация:
    29 янв 2006
    Сообщения:
    2.468
    Симпатии:
    27
    $jQuery(".jjmod-content ul.menu li ul").hide();
    $jQuery(".jjmod-content ul.menu li:first").show();

    как-нить так
     
  3. Prefollower

    Prefollower Гость

    Увы. Мне кажется, что-то с current надо. Еще, кстати: там работает скрипт рядом, который цвет пунктов при наведении меняет, так вот он на родителе активного не срабатывает. Наверное, где-то что-то прописано, но я сам не понял, там какие-то not и классы. Вот оба скрипта:
    Код (PHP):
    <?php if ($sidebar_nav_animation == "yes") { ?>
    // ------ Sidebar animation --------- //
    $jQuery('.jjmod-content ul.menu li:not(.active) a,.jjmod-content ul.menu li:not(.active)>span').hover(function() { //mouse in тут вот не пойми что. Надо php чтоль подучить :ya_lamo:
    $jQuery(this)
    .animate({backgroundColor: "<?php echo $theme_color_code[$theme_color] ?>"}, "fast")
    .animate({ backgroundColor: "#253034" }, "slow"); //классно выглядит, плавненько так в серый переходит, только подтормаживает, если мышкой быстро дергать
    }, function() { //mouse out
    $jQuery(this).animate({ backgroundColor: "#1B262A" }, "normal");
    });

    <?php } if ( $use_accordian == "yes" ) { ?>
    // ------ Accordion menu --------- //
    $jQuery(".jjmod-content ul.menu li ul").hide();
    //Сюда типа надо show, или условие в hide выше
    $jQuery(".jjmod-content ul.menu li span").<?php echo $accordian_trigger; ?>(function(){ //отсюда, насколько я понял, идет обработка клика, но ее мне не надо трогать
    $jQuery(this).next(".jjmod-content ul").slideToggle("slow").siblings("li:visible").slideUp("slow");
    $jQuery(this).toggleClass("active");
    $jQuery(this).siblings("li").removeClass("active");
    },
    $jQuery(".jjmod-content ul.menu li.active a,.jjmod-content ul.menu li.active>span").show(); не сработало.

    UPD: Круто! Смотрел на пхп, как баран на ворота, и тут сверкнула молния (фигурально), и я понял, как оно работает. Жаль, не понял, что в show писать.
     
Загрузка...
Похожие Темы - Разделитель родитель активного
  1. nvyush
    Ответов:
    14
    Просмотров:
    6.492
  2. Gor
    Ответов:
    24
    Просмотров:
    6.489
  3. Medevic
    Ответов:
    3
    Просмотров:
    2.730

Поделиться этой страницей