сохранить состояние класса нескольких div в cookie - PullRequest
0 голосов
/ 16 ноября 2011

У меня есть функция toggleClass:

$(document).ready(function() {  
    $("button#playersize").click(function(){
        $("#wrapper").toggleClass("small large");
        $(".divone").toggleClass("small large");
        $(".divtwo").toggleClass("small large");
    });
});

Это изменяет классы div'ов между «маленькой» и «большой» кнопкой.

Я бы хотел сохранить класс div (#wrapper, .divone, .divtwo) в cookie. И при перезагрузке класс должен быть сохранен.

Как мне это сделать?

У меня уже встроен плагин jquery cookie. Мой код, вероятно, немного избыточен, извините.

1 Ответ

1 голос
/ 16 ноября 2011

Вот что вы можете попробовать:

$(document).ready(function() {
    // replace the classes from the cookies
    // example if you want to check the cookie first
    if ($.cookie('class_wrapper').length > 0) {
        $("#wrapper").attr('class', $.cookie('class_wrapper'));
    } else {
        $("#wrapper").attr('class', 'small');
    }
    $(".divone").attr('class', $.cookie('class_divone'));
    $(".divtwo").attr('class', $.cookie('class_divtwo'));
    // bind the click event 
    $("button#playersize").click(function(){
        $("#wrapper").toggleClass("small large");
        $(".divone").toggleClass("small large");
        $(".divtwo").toggleClass("small large");
        // replace the cookie values
        $.cookie('class_wrapper', $("#wrapper").attr('class'));
        $.cookie('class_divone', $(".divone").attr('class'));
        $.cookie('class_divtwo', $(".divtwo").attr('class'));  
    });
});

Предостережение : еще не проверено

...