/**
*storage 对象
*/
function storage (){
var args = [].slice.call(arguments);
this.storeName = location.hostname||"defaultData";
this.store = {};
this.inited = false;
}
storage.prototype={
init:function (){
var doc = document;
var _storeEle = doc.createElement("div"),_body = doc.body;
_storeEle.style.display = "none";
_storeEle.addBehavior("#default#userData");
_body.appendChild(_storeEle);
this.store = _storeEle;
this.inited = true;
},
getData:function (key){
if(this.inited){
var _st = this.store;
_st.load(this.storeName);
return _st.getAttribute(key);
}else{
this.init();
return arguments.callee.call(this,key);
}
},
addData:function (key,val,expire){
if(this.inited){
var _st = this.store;
_st.load(this.storeName);
_st.setAttribute(key,val);
if(expire){
var d = new Date()+expire;
_st.expires = d.toUTCString();
}
_st.save(this.storeName);
}else{
this.init();
arguments.callee.call(this,key,val,expire);
}
},
exist:function (key){
return !!this.getData(key);
},
removeData:function (key){
var _st = this.store;
_st.load(this.storeName);
_st.removeAttribute(key);
_st.save(this.storeName);
}
}
var _st = new storage("my");
var _cache = _st.getData("test");
alert(_cache);
_st.addData("test","333");