/** * a jquery cache function * * create hidden text areas to store and retrieve key=>value pairs * * purpose: * some solutions are bogged down by having to encode and decode cache values stored * serialized data in a single dom element. This solution creates ids for the * dom areas allowing no required serialization if the text is encoded * * Tested only on Windows IE7 and FireFox 1.5.x * * @todo do some checks of key and value * @todo alternative use cookies/iframes for better XP persistance * * @author Jonathan Hendler (jonathan dot hendler at gmail dot com) * @license GPL 2 or 3 * @version 0.1.3 * * cacheCheck: * cachePut: * cacheGet: * cacheRemove: * */ jQuery.extend({ cacheCheck: function (key){ return jQuery('#'+key).size() > 0; }, cachePut: function (key,value){ if (!jQuery.cacheCheck(key)){ jQuery('body').append(''); } //do some checks of key and value jQuery('#'+key).val(value); }, cacheGet: function (key){ if (jQuery.cacheCheck(key)){ return jQuery('#'+key).val(); } else { return null; } }, cacheRemove: function (key){ if (jQuery.cacheCheck(key)){ jQuery('#'+key).remove(); return true; } else { return false; } } });