Тема: Cookie + Accordion
Показать сообщение отдельно
  #1 (permalink)  
Старый 07.02.2013, 11:02
Аспирант
Отправить личное сообщение для modestes Посмотреть профиль Найти все сообщения от modestes
 
Регистрация: 12.04.2012
Сообщений: 43

Cookie + Accordion
Приветствую!

Имеется менюшка
$(document).ready(function() {
	$('ul.leftMenu ul').each(function(i) {
		if ($.cookie('submenuMark-' + i)) {  
			$(this).show().prev().removeClass('collapsed').addClass('expanded'); 
		}else {
			$(this).hide().prev().removeClass('expanded').addClass('collapsed');
		}
		$(this).prev().addClass('collapsible').click(function() { 
			var this_i = $('ul.leftMenu ul').index($(this).next()); 
			if ($(this).next().css('display') == 'none') {
				$(this).next().slideDown(200, function () { 
					$(this).prev().removeClass('collapsed').addClass('expanded');
					cookieSet(this_i);
				});
			}else {
				$(this).next().slideUp(200, function () { 
					$(this).prev().removeClass('expanded').addClass('collapsed');
					cookieDel(this_i);
					$(this).find('ul').each(function() {
						$(this).hide(0, cookieDel($('ul.leftMenu ul').index($(this)))).prev().removeClass('expanded').addClass('collapsed');
					});
				});
			}
		return false;
		});
	});
});

//Тут запись в куки
function cookieSet(index) {
	$.cookie('submenuMark-' + index, 'opened', {expires: null, path: '/'}); 
}
function cookieDel(index) {
	$.cookie('submenuMark-' + index, null, {expires: null, path: '/'}); 
}


Проблема в том что при переходе из этого меню на любую страничку куки не очищаются, т.е. все ранее открытые подпункты раскрыты.

Хотя я прописал (может не правильно, с куками в меню не связывался)
function cookieDel(index) {
	$.cookie('submenuMark-' + index, null, {expires: null, path: '/'}); 
}


Собственно вопрос, как очистить куки, чтобы относительно последнего открытого подпункта, предыдущие куки отчищались?
Сайт modestes.ru, пощелкайте по левому меню и сами поймете
Ответить с цитированием