Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
 Аватар для Syrka
9 / 9 / 5
Регистрация: 21.01.2016
Сообщений: 62

Меню аккордеон: как добавить запоминание открытого пункта?

11.10.2017, 00:42. Показов 2352. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Уважаемые форумчане очень нужна помощь,есть меню аккордеон(код можно посмотреть ниже или вот http://jsfiddle.net/Syrka/sn6avvnp/34/http://jsfiddle.net/Syrka/sn6avvnp/34/
Суть вопроса: как сделать чтобы при переходе на другую страницу открытое подменю оставалось открытым?
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<div id="menu-glm">
  <ul id='nav_list_moy' class='nav_list'>
    <li>
      <a href='/about/' title='О компании'>О компании</a>
      <div class='plus'></div>
      <ul>
        <li><a href='/about/management/' title='Менеджмент'>Менеджмент</a></li>
        <li><a href='/about/history/' title='История'>История</a></li>
        <li><a href='/about/vacancies/' title='Вакансии'>Вакансии</a></li>
        <li><a href='/about/awards/' title='Награды и сертификаты'>Награды и сертификаты</a></li>
        <li><a href='/about/partners/' title='Партнёры'>Партнёры</a></li>
      </ul>
    </li>
    <li>
      <a href='/corporate/' title='Услуги'>Услуги</a>
      <div class='plus'></div>
    </li>
    <li>
      <a href='/clients/clients/' title='Клиенты'>Клиенты</a>
      <div class='plus'></div>
 
      <ul>
        <li><a href='/clients/clients/' title='Клиенты'>Клиенты</a></li>
        <li><a href='/clients/portfolio/' title='Портфолио'>Портфолио</a></li>
        <li><a href='/clients/review/' title='Отзывы о работе'>Отзывы о работе</a></li>
      </ul>
    </li>
    <li>
      <a href='/coordinates/main-office/' title='Контакты'>Контакты</a>
      <div class='plus'></div>
      <ul>
        <li><a href='/coordinates/main-office/' title='Основной офис'>Основной офис</a></li>
        <li><a href='/coordinates/region-office/' title='Подразделения'>Подразделения</a></li>
        <li><a href='/coordinates/feedback/' title='Обратная связь'>Обратная связь</a></li>
      </ul>
    </li>
  </ul>
</div>
CSS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
html,
body {
  margin: 0px;
  padding: 0px;
  background-color: #385762;
  font-size: 13px;
  line-height: 18px;
  font-family: Arial;
  height: 100%;
  color: #fff;
}
 
#menu-glm {
  width: 240px;
  position: relative;
}
 
.nav_list {
  padding: 0px;
  margin: 0px;
  width: 240px;
  list-style: none;
}
 
.nav_list li {
  position: relative;
}
 
.nav_list li a {
  padding: 5px 0px 5px 20px;
  display: block;
  font-size: 15px;
  font-weight: bold;
  color: #fff;
  text-decoration: none;
}
 
.nav_list li a:hover {
  color: #fff;
  background-color: #24a6d7;
}
 
.nav_list ul {
  margin: 0;
  display: block;
  padding: 0px;
  margin: 0px;
}
 
.nav_list ul li {
  list-style: none;
  position: static;
}
 
.nav_list ul a {
  padding-left: 0px;
  font-size: 14px;
  color: #a3e5fc;
  padding: 3px 0px 3px 30px;
  font-weight: normal;
}
 
.nav_list li div {
  position: absolute;
  top: 5px;
  left: 2px;
  border: 0px;
  padding: 0px;
  margin: 0px;
}
 
.nav_list li div img {
  padding: 0px;
  margin: 0px;
  cursor: pointer;
}
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
$(document).ready(function() {
 
  $('#nav_list_moy').find('ul').prev('.plus').html('<img src="http://milknews.ru/img/plus.gif">');
  $('.activ > div').html('<img src="http://milknews.ru/img/minus.gif">');
 
  //делаем пункты видимыми и скрываем js для тех у кого отключен js они должны быть видимыми
  $('li > ul').css({
    'display': 'none'
  });
  $('.activ > ul').slideDown(250);
 
  $('div.plus').click(function() {
    if ($(this).parent().hasClass('activ')) {
      $('#nav_list_moy .activ > .plus').html('<img src="http://milknews.ru/img/plus.gif">');
      $('#nav_list_moy .activ > ul').slideUp(250);
      $('#nav_list_moy .activ').removeClass('activ');
    } else {
      $('#nav_list_moy .activ > .plus').html('<img src="http://milknews.ru/img/plus.gif">');
      $('#nav_list_moy .activ > ul').slideUp(250);
      $('#nav_list_moy .activ').removeClass('activ');
 
      $(this).parent().addClass('activ');
      $('#nav_list_moy .activ > ul').slideDown(250);
      $('#nav_list_moy .activ > .plus').html('<img src="http://milknews.ru/img/minus.gif">');
    }
  });
}); // 0 - конец ready
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.10.2017, 00:42
Ответы с готовыми решениями:

Как свернуть меню-аккордеон?
Добрый день. Я сделал простое вертикальное меню аккордеон. Вроде все работает. Единственное, очень бы хотелось, чтобы оно сварачивалось не...

Как дополнить скрипт меню аккордеон?
Добрый день уважаемые форумчане! Прошу помощи: Есть рабочее меню аккордеон: &lt;div id=&quot;menu&quot;&gt; &lt;ul&gt; ...

Связать ссылку с меню аккордеон
Добрый день. Помогите в решении двух проблемы. Есть меню аккордеон на тест сайте http://746584.avtogr06.web.hosting-test.net/. Все работает...

2
Эксперт JS
2463 / 1769 / 625
Регистрация: 11.07.2016
Сообщений: 4,067
11.10.2017, 10:08
Цитата Сообщение от Syrka Посмотреть сообщение
как сделать чтобы при переходе на другую страницу открытое подменю оставалось открытым?
Запоминайте, какое меню открыто в куках. Далее при генерации странице на сервере читайте куки и подставляйте соответствующие классы. Либо делайте это на клиенте, но сервер будет предпочтительнее наверно.
0
 Аватар для Syrka
9 / 9 / 5
Регистрация: 21.01.2016
Сообщений: 62
11.10.2017, 10:25  [ТС]
Да,это понятно. Только вот не получается что-то... Буду пробовать...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.10.2017, 10:25
Помогаю со студенческими работами здесь

Меню аккордеон
Есть менюшка аккордеон. Как сделать так чтоб первый пункт меню по-умолчанию (при загрузке страницы) был развернут... ...

Меню-аккордеон
Добрый день Ув. пользователи форума. Возникла проблема с блоками меню, решил воспользоваться jQuery. Неполучается сделать скрытие фона...

Меню аккордеон
Это код меню аккордеона &lt;script type=&quot;text/javascript&quot;&gt; $(document).ready(function() { // Хранение переменных var...

jQuery меню аккордеон
Проблема в следующем: Есть меню аккордеон в котором 3 раздела и на данный момент 2 из них пусты, нужно сделать так чтоб те разделы в...

Меню в стиле аккордеон
Всем привет. Помогите переделать меню http://jsfiddle.net/karpoc/tpamgqf5/13/ &lt;ul id=&quot;nav_list_first&quot; class=&quot;nav_list&quot;&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru