Здравствуйте! Мне хотелось бы, чтобы при загрузке страницы родитель активного элемента был раскрыт. По умолчанию закрываются все сразу. Выше кода, отвечающего за аккордеон, находится код анимации пунктов меню, который как раз таки не срабатывает на родителе активного элемента. Пробовал параметр оттуда вставлять в строчку закрывания, меню корежит только. Пробовал в (...).show() вставлять и active, и active.parent, и current - ничего не происходит. Вот собсно код 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 тут вот не пойми что. $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"); },
Да, DOM ready. Я-то думаю, для чего же он был нужен? Он у меня не инициализировался и рушил всю яву на странице, я его и закомментировал. А здесь-то его куда впихнуть? Вот строчка была, PHP: //$tooltipInit = ' window.addEvent(\'domready\', function(){ var JTooltips = new Tips($$(\''.$selector.'\'), '.$options.'); });'; в ошибках писало что нет такой функции. Типа если это поправить, то и меню заработает?[/php]
А она и не тут. Это же фрагмент большого php-файла. Только у залогинившихся пользователей выскакивает Uncaught exception: TypeError: 'window.addEvent' is not a function Error thrown at line 2, column 2 in http://example.com/: window.addEvent('domready', function(){ var JTooltips = new Tips($$('.hasTip'), { maxTitleChars: 50, fixed: false}); }); Тем более включенность дома на меню не влияет вроде. UPD: Или Вы таки придираетесь к несчастным юзерам и жестоко дифференцируете яву и яваскрипт? Извиняюсь, что лень писать полностью, здесь и далее подразумевается Javascript
на сколько я понял тебе надо тупо прописать в нужное место а именно в цсс [css].dropdown{ display:none; } .dropdown li{ border:0px; } .droppokazano{ display:block; } .droppokazano li{ border:0px; }[/css] а в хтмл задать стили HTML: <li class="menu"> <ul> <li class="button"><a href="#" class="verh">Скрытое меню<span></span></a></li> <li class="dropdown"> <ul> <li><a href="#">Меня не видно</a></li> <li><a href="#">Меня не видно</a></li> <li><a href="#">Меня не видно</a></li> <li><a href="#">Меня не видно</a></li> </ul> </li> </ul> </li> <li class="padaetmenu"> <ul> <li class="button"><a href="#" class="verh">Не скрытое меню<span></span></a></li> <li class="droppokazano"> <ul> <li><a href="#">Меня видно</a></li> <li><a href="#">Меня видно</a></li> <li><a href="#">Меня видно</a></li> <li><a href="#">Меня видно</a></li> </ul> </li> </ul> </li> рабочий вариант есть тут http://booksis.ru/
Со стилями у меня как раз все в порядке, и отображается все правильно. Не мной сделанный яваскрипт при загрузке не мной сделанной страницы .php работает с меню. Из php в яваскрипт передаются указатели (или как это в php называется) на те пункты меню, с которыми скрипт должен работать. Мне нужен такой "указатель", который я бы передал в скриптовый метод .show(), чтобы вкладка, в которой есть активный пункт, раскрывалась при вызове этого скрипта при загрузке страницы. В исходном варианте все вкладки сворачиваются методом .hide(). Или же можно прикрутить в hide() условие, обходящее активную вкладку, но у меня лично ни того, ни другого с наскоку не получилось. Похожее меню можно посмотреть тут: http://www.joomlajunkie.com/demo/ шаблон dark rational, меню accordion слева, жмакните joomla и contact. Подсветка у пункта joomla исчезнет, но раскрыто оно как раз не будет. А мне надо, чтоб если contact выделено черным, то вся вкладка joomla при загрузке раскрывалась.
Эм, в моем случае, походу, немного измененная версия. К примеру, в первоисточнике нельзя открыть две вкладки разом, а у меня можно. За базу взято jQuery, да. Но там про обращение к активной вкладке я ничего не нашел.