Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.03.2013, 21:54
Аспирант
Отправить личное сообщение для modestes Посмотреть профиль Найти все сообщения от modestes
 
Регистрация: 12.04.2012
Сообщений: 43

Cookies + Спойлер
Добрый день!

Есть скрипт спойлера с куками:

if ($.cookie("blockhide")=="Свернуто") {
		$('.hide.cookies').show();
		$('a.cookies').html('<i class="icon-plus"></i>');
	} else {
		$('.hide.cookies').hide();
		$('a.cookies').html('<i class="icon-minus"></i>');
	}

	$('.view-source a.cookies').toggle(
		function(){
			$.cookie("blockhide", "Свернуто");
			$(this).siblings('.hide.cookies').stop(false, true).slideUp(500);
			$(this).html('<i class="icon-minus"></i>');
		},
		function(){
			$.cookie("blockhide", "Развернуто");
			$(this).siblings('.hide.cookies').stop(false, true).slideDown(500);
			$(this).html('<i class="icon-plus"></i>');
		}
	);

	$('.hide.nocookies').show();
	$('.view-source a.nocookies').toggle(
		function(){
			$(this).siblings('.hide.nocookies').stop(false, true).slideUp(500);
			$(this).html('<i class="icon-minus"></i>');
		},
		function(){
			$(this).siblings('.hide.nocookies').stop(false, true).slideDown(500);
			$(this).html('<i class="icon-plus"></i>');
		}
	);


Хотел сделать раскрывающиеся подкатегории при клике на плюсик возле родительской категории.
Проблема в том что при изначально закрытом состоянии спойлера, Cookies не работают, т.е при обновлении страницы спойлер снова закрывается.
Если же поменять местами параметры .hide и .show, .slideUp и .slideDown то есть сделать спойлер изначально открытым, потом закрыть его и обновить страницу то он остается закрытым, но тогда раскрываются и другие категории, подскажите пожалуйста, что не так в скрипте?

Последний раз редактировалось modestes, 03.03.2013 в 22:10.
Ответить с цитированием
  #2 (permalink)  
Старый 03.03.2013, 22:33
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

modestes,
Засовывать в кук все индексы раскрытых подменю через запятушку, затем, при чтение кука, - через split(",") снова преобразовывать в массив
Имхо нужен полный код с HTML
Ответить с цитированием
  #3 (permalink)  
Старый 04.03.2013, 13:11
Аспирант
Отправить личное сообщение для modestes Посмотреть профиль Найти все сообщения от modestes
 
Регистрация: 12.04.2012
Сообщений: 43

Что то не вкурил про индексы.
Структура HTML:

<ul class="maincat-list">
	<li class="maincat view-source"><a title="" href="http://phpoop.ru/ad-category/vishivka/">Категория</a>
	<a href="#" class="cookies"><i class="icon-minus"></i></a>

	<ul class="subcat-list hide cookies">
		<li class="cat-item"><a title="" href="#">Подкатегория 1</a></li>
		<li class="cat-item"><a title="" href="#">Подкатегория 2</a></li>
		</ul>
	</li>
</ul>
Ответить с цитированием
  #4 (permalink)  
Старый 04.03.2013, 16:03
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от modestes
Что то не вкурил про индексы.
Вот готовое, ток куки стоит поменять на куки от jQuery http://habrahabr.ru/post/169265/
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
можно ли заставить ajax не отправлять cookies ? mitiya Общие вопросы Javascript 3 18.11.2012 16:57
Размер cookies в IE9 или альтернатива cookies? JDev Общие вопросы Javascript 23 07.08.2012 18:03
проверка отсутствия всех cookies legrol Общие вопросы Javascript 0 30.03.2012 11:38
Про использование cookies zloctb Общие вопросы Javascript 3 11.02.2012 09:36
Создание cookies cyberx Общие вопросы Javascript 3 22.03.2010 21:59