@daggett206

Как сохранить значение переменной при использовании cookie?

Добрый вечер, никак не могу сохранить значние переменной. Сайт land.16mb.com, значение в правом верхнем правом углу меняется в зависимости от выбора города, но после обновления страницы все пропадает. Использую j.cookie, вот код:
var currentCity;
    if ($.cookie('modal_shown') == null) {
        $.cookie('modal_shown', 'yes', { expires: 7, path: '/' });

        $('.overlay').removeClass('hidden');

        $(".overlay-1").click(function(){
            $('.overlay').toggleClass('hidden');
            currentCity = $('.header-city').text("Ижевск");
            return currentCity;
        });

        $(".overlay-2").click(function(){
            $('.overlay').toggleClass('hidden');
            currentCity = $('.header-city').text("Москва");
            return currentCity;
        });
    } 
    currentCity;

Заранее благодарен за помощь!
  • Вопрос задан
  • 578 просмотров
Решения вопроса 1
@DmitrySorokin
Логично, тк значение у тебя записывается в момент выбора города (клик в попапе). Соответственно, при обновлении страницы, попап ты уже не показываешь, тк уже записана кука (modal_shown)> а раз нет попапа, то и не отрабатывает событие "currentCity = $('.header-city').text("Ижевск");"

Нужно дописать обе функции:

$(".overlay-1").click(function(){
            $('.overlay').toggleClass('hidden');
            currentCity = $('.header-city').text("Ижевск");
//записываем в куку значение города
$.cookie('city', 'ijevsk', { expires: 7, path: '/' });
            return currentCity;
        });

        $(".overlay-2").click(function(){
            $('.overlay').toggleClass('hidden');
            currentCity = $('.header-city').text("Москва");
//записываем в куку значение города
$.cookie('city', 'moscow', { expires: 7, path: '/' });
            return currentCity;
        });


$(document).ready(function(){
//здесь нужно добавить инструкцию, которая проверяет куку и записывает значение куки в блок,если кука есть

});


А еще лучше на клик по попапу просто записывать куку. И потом проверяя значение куки дописывать его в блок.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы