Помогите с меню на JS

G1
На сайте с 04.02.2013
Offline
1
308

Добрый день, в интернете нашел красивое меню с категориями и выдвигающимися по клику подкатегориями. Стал прикручивать его в моему шаблону WordPress и возникла следующая проблема:

Ссылки на категории не работают(работают только на подкатегории).

Т.е. к примеру есть:

1. Аудио

2. Видео

3. Игры

3.1. Стратегии

3.2. Action

3.3. RPG

При клике на категорию Игры выдвигаются подкатегории и все. А необходимо, чтобы при клике на категорию не только выдвигался список подкатегорий, но и заходило в этот раздел.(У меня получается что при клике на Аудио, Видео(т.е. где нет подкатегорий) вообще ничего не происходит.

Надеюсь понятно изложил.

Ниже прилагаю код:

1. В сайдбаре(где располагается меню)

<ul class="cats" id="nav2">

<?php wp_list_categories('orderby=name&exlude=181&title_li=');

$this_category = get_category($cat);

if (get_category_children($this_category->cat_ID) != "") {

echo "<ul class='children'>";

wp_list_categories('orderby=id&show_count=0&title_li=&use_desc_for_title=1&child_of='.$this_category->cat_ID);

echo "</ul>";

}

?>

</ul>

2. Сам скрипт

<script type="text/javascript">

$(function() {

var menu_ul = $('#nav2 > li > ul'),

menu_a = $('#nav2 > li > a');

menu_ul.hide();

menu_a.click(function(e) {

e.preventDefault();

if(!$(this).hasClass('active')) {

menu_a.removeClass('active');

menu_ul.filter(':visible').slideUp('normal');

$(this).addClass('active').next().stop(true,true).slideDown('normal');

} else {

$(this).removeClass('active');

$(this).next().stop(true,true).slideUp('normal');

}

});

});

</script>

К сожалению познаний в JS никаких, очень надеюсь на вашу помощь.

дани мапов
На сайте с 06.09.2012
Offline
204
#1

Попробуйте заменить


menu_a = $('#nav2 > li > a');

на


menu_a = $('#nav2 > li:has(ul) > a');
Написание и доработка скриптов (PHP, MySQL, JavaScript, jQuery) (/ru/forum/811046)
G1
На сайте с 04.02.2013
Offline
1
#2

Огромное вам спасибо! Все заработало!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий