2014-11-03 3 views
0

Я создаю сайт jQuery Mobile (1.4.2) и используя панели. Я установил скрипт для открытия панели при загрузке, если ширина окна равна gt 768. Это отлично работает, за исключением пользователей, которые закрывают панель и хотят закрыть ее при выполнении определенных задач, поэтому я подумываю установить cookie, когда они закрывают панель и запускают только скрипт, который открывает панель, если cookie не установлен.jQuery Mobile Panel/jQuery Cookies

Для моего первоначального сценария я следующий, и все хорошо -

<script>  
$(document).on('pageinit', function() { 
    var width = $(window).width(); 
    if(width > 768) { 
     $('##bluebuttonsPanel').panel('open');     
    } 
}); 
</script> 

Использование JQuery печенья плагин я устанавливаю печенье, как это -

<script> 
$(document).on('pageinit', function() { 
    if($('.ui-panel').hasClass('ui-panel-closed') == true) { 
     $.cookie('panel','is-hidden'); 
    } else { 
     $.cookie('panel','is-visible'); 
    }; 
}); 
</script> 

Где я запутался пытается для изменения значения файла cookie, когда они нажимают на вкладку для панели, тогда, если значение cookie панели установлено на «скрыто», не запускайте начальный открытый скрипт. Так что я не знаю, как изменить значение куки на щелчок и испытания для условия на открытом сценарии ...

$('a#tab').click(function() { 
    if ($.cookie('panel', 'is-visible')){ ...? 

Любая помощь будет принята с благодарностью! Надеюсь, я опубликую это правильно, потому что я не писал в течение очень долгого времени! ТИА!

+0

Работает ли ваше приложение на одной веб-странице? Если это так, вы можете рассмотреть глобальные переменные, а не файлы cookie. Файлы cookie обычно используются для сохранения состояния между сеансами браузера, а не для сохранения состояния в одном сеансе браузера. – Kolban

+0

Спасибо Kolban! Нет, мы меняем страницы в приложении. Поэтому всякий раз, когда происходит обновление страницы или изменение страницы, скрипт, который открывает панель, запускается по каждому запросу и снова открывает панель. Представления форм не являются ajax и не изменяются. Это то, что я пытаюсь переделать! – user3059071

+0

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