Перейти к содержимому


Выпадающее Меню По Клику

выпадающее меню по клику

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 45

#21 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 23 805 сообщений

Отправлено 03 Октябрь 2014 - 22:05

$(function() {
  $('#css3menu44 li a').click(function() {
		$(this).parent().children('ul').toggleClass('active');
   return (false);
  });
});
$(function() {
$('#css3menu55 li a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});
замените на:
$(function() {
  $('#css3menu44 li.parent a').click(function() {
		$(this).parent().children('ul').toggleClass('active');
   return (false);
  });
});
$(function() {
$('#css3menu55 li.parent a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});

где у вас можно проверить добавленный класс?

#22 Константин1111

Константин1111

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 192 сообщений
  • ГородКраснодар

Отправлено 03 Октябрь 2014 - 22:11

Просмотр сообщенияVaccina (03 Октябрь 2014 - 22:05) писал:

$(function() {
$('#css3menu44 li a').click(function() {
	 $(this).parent().children('ul').toggleClass('active');
return (false);
});
});
$(function() {
$('#css3menu55 li a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});
замените на:
$(function() {
$('#css3menu44 li.parent a').click(function() {
	 $(this).parent().children('ul').toggleClass('active');
return (false);
});
});
$(function() {
$('#css3menu55 li.parent a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});

где у вас можно проверить добавленный класс?
после изменения меню не открывается вовсе

#23 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 23 805 сообщений

Отправлено 03 Октябрь 2014 - 22:13

потому что я вам писала выше:

Цитата

с данным добавлением класса я хочу реализовать возможность выпадения последующего уровня, но если у него такового иметься не будет, то он будет вести себя как обычная ссылка, то есть нам в последующем придется с добавлением класса изменить код в main.js с
$(function() {
$('#css3menu44 li a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});
на:
$(function() {
$('#css3menu44 li.parent a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});

здесь добавила класс parent

код будет работать с добавочным классом, который на данный момент у вас отсутствует

#24 Константин1111

Константин1111

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 192 сообщений
  • ГородКраснодар

Отправлено 03 Октябрь 2014 - 22:15

Просмотр сообщенияКонстантин1111 (03 Октябрь 2014 - 22:11) писал:

после изменения меню не открывается вовсе

Просмотр сообщенияVaccina (03 Октябрь 2014 - 22:05) писал:

$(function() {
$('#css3menu44 li a').click(function() {
	 $(this).parent().children('ul').toggleClass('active');
return (false);
});
});
$(function() {
$('#css3menu55 li a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});
замените на:
$(function() {
$('#css3menu44 li.parent a').click(function() {
	 $(this).parent().children('ul').toggleClass('active');
return (false);
});
});
$(function() {
$('#css3menu55 li.parent a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});

где у вас можно проверить добавленный класс?
после добавления класса в "Hyundai" меню открылось... далее Solaris - верхняя строчка - запчасти для ТО(как раз здесь тоже стоит класс"parent") - масляный фильт(ссылка)

#25 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 23 805 сообщений

Отправлено 03 Октябрь 2014 - 22:32

на данный момент не обнаружила добавочного класса у Hyundai

#26 Константин1111

Константин1111

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 192 сообщений
  • ГородКраснодар

Отправлено 03 Октябрь 2014 - 22:34

Просмотр сообщенияVaccina (03 Октябрь 2014 - 22:32) писал:

на данный момент не обнаружила добавочного класса у Hyundai
<li class="parent"><a style="width:108px;"><span>HYUNDAI</span></a>
1520 строка

#27 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 23 805 сообщений

Отправлено 04 Октябрь 2014 - 03:18

$(function() {
  $('#css3menu44 li.parent a').click(function() {
				$(this).parent().children('ul').toggleClass('active');
   return (false);
  });
});
$(function() {
$('#css3menu55 li.parent a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});
замените на:
$(function() {
  $('#css3menu44 li.parent > a').click(function() {
				$(this).parent().children('ul').toggleClass('active');
   return (false);
  });
});
$(function() {
$('#css3menu55 li.parent > a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});

в этом случае будут выпадать подкатегории у чьих родителей имеется класс parent

#28 Константин1111

Константин1111

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 192 сообщений
  • ГородКраснодар

Отправлено 04 Октябрь 2014 - 07:30

Просмотр сообщенияVaccina (04 Октябрь 2014 - 03:18) писал:

$(function() {
$('#css3menu44 li.parent a').click(function() {
			 $(this).parent().children('ul').toggleClass('active');
return (false);
});
});
$(function() {
$('#css3menu55 li.parent a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});
замените на:
$(function() {
$('#css3menu44 li.parent > a').click(function() {
			 $(this).parent().children('ul').toggleClass('active');
return (false);
});
});
$(function() {
$('#css3menu55 li.parent > a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});

в этом случае будут выпадать подкатегории у чьих родителей имеется класс parent
Спасибо огромное, в целом проблема решена, конечно не так просто как хотелось бы но все же... Делаю меню в программе, а после заливаю шаблон на сайт, поэтому придется вручную выставлять классы для открывающихся строчек. Но это мелочи... Еще раз огромное спасибо!!!!!

#29 Константин1111

Константин1111

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 192 сообщений
  • ГородКраснодар

Отправлено 08 Октябрь 2014 - 14:49

Просмотр сообщенияVaccina (03 Октябрь 2014 - 21:57) писал:

с данным добавлением класса я хочу реализовать возможность выпадения последующего уровня, но если у него такового иметься не будет, то он будет вести себя как обычная ссылка, то есть нам в последующем придется с добавлением класса изменить код в main.js с
$(function() {
$('#css3menu44 li a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});
на:
$(function() {
$('#css3menu44 li.parent a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});

здесь добавила класс parent
Добрый день, подскажите пожалуйста, как сделать чтобы при клике по другой ветке меню,открытая до этого ветка закрывалась?

#30 Dars

Dars

    Активный участник

  • Модератоpы
  • 1 410 сообщений

Отправлено 08 Октябрь 2014 - 14:57

Просмотр сообщенияКонстантин1111 (08 Октябрь 2014 - 14:49) писал:

Добрый день, подскажите пожалуйста, как сделать чтобы при клике по другой ветке меню,открытая до этого ветка закрывалась?
Насколько я могу судить, сейчас именно так и происходит.

#31 Константин1111

Константин1111

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 192 сообщений
  • ГородКраснодар

Отправлено 08 Октябрь 2014 - 16:53

Просмотр сообщенияDars (08 Октябрь 2014 - 14:57) писал:

Насколько я могу судить, сейчас именно так и происходит.
нет, сейчас при первой открытой ветке меню, если открыть еще одну, то первая также остается открытой

#32 Ирина345

Ирина345

    Активный участник

  • Модераторы
  • 5 673 сообщений

Отправлено 08 Октябрь 2014 - 18:51

Просмотр сообщенияКонстантин1111 (08 Октябрь 2014 - 16:53) писал:

нет, сейчас при первой открытой ветке меню, если открыть еще одну, то первая также остается открытой
Здравствуйе, на данный момент у Вас на главной в меню, категории закрываются
Уточните где не закрываются

#33 Константин1111

Константин1111

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 192 сообщений
  • ГородКраснодар

Отправлено 09 Октябрь 2014 - 08:53

Просмотр сообщенияИрина345 (08 Октябрь 2014 - 18:51) писал:

Здравствуйе, на данный момент у Вас на главной в меню, категории закрываются
Уточните где не закрываются
http://zigzag93.ru/page/catalog вертикальные меню

#34 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 23 805 сообщений

Отправлено 10 Октябрь 2014 - 04:26

$(function() {
$('#css3menu44 li.parent a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});
замените на:
$(function () {
  $('#css3menu44 li.parent a').click(function () {
	$('#css3menu44 > li > ul').removeClass('active');
	$(this).parents().children('ul').toggleClass('active');
	return (false);
  });
});


#35 Константин1111

Константин1111

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 192 сообщений
  • ГородКраснодар

Отправлено 10 Октябрь 2014 - 11:32

Просмотр сообщенияVaccina (10 Октябрь 2014 - 04:26) писал:

$(function() {
$('#css3menu44 li.parent a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});
замените на:
$(function () {
$('#css3menu44 li.parent a').click(function () {
$('#css3menu44 > li > ul').removeClass('active');
$(this).parents().children('ul').toggleClass('active');
return (false);
});
});
При изменении данного кода меню отказывается открываться вообще(((

#36 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 23 805 сообщений

Отправлено 11 Октябрь 2014 - 00:22

даже если отменить мои изменения, то работать все равно не будут, просмотрите, что вы совместно изменяли, на данный момент вижу ошибку в структуре и условиях в шаблоне HTML, сл.блока:
<body {% IF PAGE_TITLE=Каталог %} style="background: url(http://design.zigzag93.ru/122.jpg);" >
{% IF PAGE_TITLE=Каталог %}
<div style="display:block; {%ELSE%}display:none; {% ENDIF %}">
< meta name="description" content="Каталог применяемости масел и технических жидкостей для иномарок">
< meta name="keywords" content="каталог,масла,вязкость,подбор,0W-20,полироли,в краснодаре,тойота,тоёта,иномарок,5w-30,запчасти для ТО,автохимия,toyota,правый руль,допуск,api,gf-4,sae">


#37 Константин1111

Константин1111

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 192 сообщений
  • ГородКраснодар

Отправлено 11 Октябрь 2014 - 08:15

Просмотр сообщенияVaccina (11 Октябрь 2014 - 00:22) писал:

даже если отменить мои изменения, то работать все равно не будут, просмотрите, что вы совместно изменяли, на данный момент вижу ошибку в структуре и условиях в шаблоне HTML, сл.блока:
<body {% IF PAGE_TITLE=Каталог %} style="background: url(http://design.zigzag93.ru/122.jpg);" >
{% IF PAGE_TITLE=Каталог %}
<div style="display:block; {%ELSE%}display:none; {% ENDIF %}">
< meta name="description" content="Каталог применяемости масел и технических жидкостей для иномарок">
< meta name="keywords" content="каталог,масла,вязкость,подбор,0W-20,полироли,в краснодаре,тойота,тоёта,иномарок,5w-30,запчасти для ТО,автохимия,toyota,правый руль,допуск,api,gf-4,sae">
А в чем здесь ошибка?

#38 Dars

Dars

    Активный участник

  • Модератоpы
  • 1 410 сообщений

Отправлено 11 Октябрь 2014 - 08:55

Просмотр сообщенияКонстантин1111 (11 Октябрь 2014 - 08:15) писал:

А в чем здесь ошибка?
Вообще, много в чем, но самое главное - мета-теги размещаются между тэгами <head></head>

#39 Константин1111

Константин1111

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 192 сообщений
  • ГородКраснодар

Отправлено 11 Октябрь 2014 - 09:36

Просмотр сообщенияVaccina (11 Октябрь 2014 - 00:22) писал:

даже если отменить мои изменения, то работать все равно не будут, просмотрите, что вы совместно изменяли, на данный момент вижу ошибку в структуре и условиях в шаблоне HTML, сл.блока:
<body {% IF PAGE_TITLE=Каталог %} style="background: url(http://design.zigzag93.ru/122.jpg);" >
{% IF PAGE_TITLE=Каталог %}
<div style="display:block; {%ELSE%}display:none; {% ENDIF %}">
< meta name="description" content="Каталог применяемости масел и технических жидкостей для иномарок">
< meta name="keywords" content="каталог,масла,вязкость,подбор,0W-20,полироли,в краснодаре,тойота,тоёта,иномарок,5w-30,запчасти для ТО,автохимия,toyota,правый руль,допуск,api,gf-4,sae">
Я произвел обратную замену кода на

$(function() {
$('#css3menu44 li.parent a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});
$(function() {
$('#css3menu55 li.parent a').click(function() {
$(this).parent().children('ul').toggleClass('active');
return (false);
});
});


Меню снова прекрасно работает без дополнительных изменений в css и HTML  
Каким образом реализовать закрытие открытого блока меню при клике на другой блок?

#40 Константин1111

Константин1111

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 192 сообщений
  • ГородКраснодар

Отправлено 12 Октябрь 2014 - 14:06

актуально





Темы с аналогичным тегами выпадающее, меню, по клику

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных