cache
/**
* cache.
* page data cache in cache.
*/
(function($) {
$.cache = {};
$.extend($.cache, {
map : {},
push : function(key, value) {
$.cache.map[key] = value;
},
remove : function(key) {
delete($.cache.map[key]);
},
clear : function() {
$.cache.map = {};
},
get : function(key) {
return $.cache.map[key];
}
});
})(jQuery);
icache
/**
* icache.
* page data cache in dom.
*/
(function($) {
$.icache = {};
$.extend($.icache, {
validStr : function(str) {
return typeof(str) == 'string' ? true : false;
},
data : {
containerId :'icacheContainer'
},
enable : function() {
if ($('#' + $.icache.data.containerId).length != 0) return;
var container = $('<div>').attr('id', $.icache.data.containerId).hide();
$('body').append(container);
},
getContainer : function() {
$.icache.enable();
return $('#' + $.icache.data.containerId);
},
push : function(key, value) {
if (!$.icache.validStr(key) || !$.icache.validStr(value)) return;
var container = $.icache.getContainer();
var e = container.find('#' + key);
if (e.length == 0) e = $('<div>').attr('id', key).appendTo(container);
e.html(value);
},
get : function(key) {
return $.icache.getContainer().find('#' + key).html();
},
remove : function(key) {
$.icache.getContainer().find('#' + key).remove();
},
clear : function() {
$.icache.getContainer().empty();
}
});
})(jQuery);