クリック時にdivのスタイルをlocalStorageに保存してクリアする機能があります:
var originalAttributes = $('.aaa').attr('style');
$('.aaa').each(function(){
var d = $(this),
id = d.attr('id'),
storedStyle = window.localStorage.getItem('aaaStyle' + id);
if (storedStyle != undefined){ //style stored
d.attr('style', storedStyle);
}
});
//mouse event functions for class="aaa"
$('#save').click(function () {
$('.aaa').each(function(){
var d = $(this),
id = d.attr('id'),
style = d.attr('style');
if (style != originalAttributes){ //style changed
//$.cookie('aaaStyle' + id, style, { expires: 30 });
window.localStorage.setItem('aaaStyle' + id, style);
}
});
});
$('#clear').click(function () {
// unset changes
$('.aaa').attr('style',originalAttributes).each(function(){
var d = $(this),
id = d.attr('id');
window.localStorage.removeItem('aaaStyle' + id);
});
});
ローカル ストレージのデータを圧縮するには、このコードに何を追加する必要がありますか?
(各ブラウザにはドメインごとのメモリ制限があり、この機能を最大限に活用したいと考えています)