“Souviens-toi” du style de div au clic (définir un cookie) – plugin jquery et jquery cookie

J’ai un groupe de divs avec les événements mouseenter, mouseleave et click.

var originalAtsortingbutes = $('.aaa').attr('style'); $('.aaa').mouseenter(function () { $(this).css('background', '#aaaaaa'); $(this).css('border', 'solid 1px red'); }); $('.aaa').mouseleave(function () { $(this).css('background','blue'); }); $('.aaa').click(function () { var $this = $(this); update_x1(this); $this.off('mouseenter mouseleave'); }); $('#save').click(function () { $.cookie({ expires: 30 }); }); $('#clear').click(function () { $('.aaa').attr('style',originalAtsortingbutes); }); 

http://jsfiddle.net/z8KuE/24/

Comment les fonctionnalités “save” et “clear” peuvent être obtenues dans cette fonction et avec l’utilisation du plugin jquery cookie?

Cliquez sur “enregistrer” devrait “rappeler” le style actuel de la div, et cliquez sur “effacer” devrait réinitialiser le style à l’original et effacer le cookie (ou ré-écrire).

edit: résolu par Shimon Rachlenko – http://jsfiddle.net/z8KuE/31/

Voici le code pour enregistrer et effacer les boutons:

 $('#save').click(function () { $('.aaa').each(function(){ var d = $(this), id = d.attr('id'), style = d.attr('style'); if (style != originalAtsortingbutes){ //style changed $.cookie('aaaStyle' + id, style, { expires: 30 }); } }); }); var originalAtsortingbutes = "position: relative; left: 50px; top: 30px; width: 300px; height: 50px; background: #222222"; $('#clear').click(function () { // unset changes $('.aaa').attr('style',originalAtsortingbutes); }); 

Voir le violon