2013-08-08 4 views
0

В следующем примере кода используется куки-файл jQuery для запоминания последнего класса триггеров для навигации по боковой панели. Поэтому он будет помнить, что боковая панель рухнула или открылась и сохранила тот же статус после обновления или перезагрузки.Как использовать jQuery cookie для запоминания триггерного класса для всех URL-адресов веб-сайта, а не только на странице

Однако это запоминание последнего класса для каждой страницы отдельно, а не для всего веб-сайта. Например, если боковая панель рухнула на стр. 1, мне нужно, чтобы она была свернута на странице 2 и на других страницах, пока я не нажму на разворот. Однако в настоящее время он сохраняет класс боковой панели для каждой страницы отдельно.

Я запускаю сайт локально на своем локальном сервере.

Вот код в jsFiddle: http://jsfiddle.net/hJAk3/3/

Вот это HTML:

<div id="side-bar"> 
    Side-bar Menu <br /><br />   
    Page1 <br /><br />   
    Page2  
</div> 

<button class="collapse"> 
    test 
</button> 

Вот код JS:

if($.cookie("state") == 1) { 
    $('#side-bar').addClass("collap"); 
} else { 
$('#side-bar').removeClass("collap"); 
} 

$(".collapse").click(function() { 
    $("#side-bar").toggleClass("collap"); 
if($("#side-bar").hasClass("collap")) { 
    $.cookie("state", 1); 
} else { 
    $.cookie("state", 0); 
} 
}); 

ответ

1

Вы пробовали это:

Создать истекающий cookie, действительный на всем сайте:

$.cookie('the_cookie', 'the_value', { expires: 7, path: '/' }); 

Для получения дополнительной информации перейдите к https://github.com/carhartl/jquery-cookie

+0

Это идеальный вариант, и все сортируется сейчас :) Спасибо – Carmijoon