您的位置:首页 > 其它

使用localStorage替代cookie做本地存储,例如最近浏览历史记录

2013-07-02 16:16 846 查看
因为cookie存储有限,加上cookie每次都要上传到服务器,浪费了带宽不说,而且伤害了人民群众的感情。

基于HTML5的localStorage可能能给你带的新的希望,而且最大支持不超过5MB的数据存储。可惜的是,IE方面只支持IE8以上的版本。



我花了一点时间就最近浏览记录的存储简单的写了一个javascript代码来做演示

late = {
storage : {},
isinit : 0,
maxnum : 10,
key : 'vestigial',
_init:function(){
if (late.isinit === 1) {
return true;
} else if (late.isinit === 0 && window.localStorage) {
late.isinit = 1;
late.storage = window.localStorage;
return true;
} else {
return false;
}
},

get:function(){
if(late._init()){
var data = late.storage.getItem(late.key);
return JSON.parse(data);
}else{
return false;
}
},

set:function(value){
if(late._init()){
var data = late.storage.getItem(late.key);
data = JSON.parse(data);
if(data === null){
data = [];
}
if (data.length === 10) {
data.shift();
}
data.push(value);
data = JSON.stringify(data);
late.storage.setItem(late.key, data);
return true;
}else{
return false;
}
}
};

var obj = {
id:2,
title:'标题1',
url:'http://www.baidu.com'
};
late.set(obj);
var each = late.get();
var eachlength = each.length;
for(i=0; i<eachlength; i++){
document.writeln(JSON.stringify(each[i]));
}


实在不行的话还可以使用flash来存储,不建议使用cookie。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: