IE提供了一种存储可以持久化用户数据,叫做userData,从IE5.0就开始支持。每个数据最多128K,每个域名下最多1M。这个持久化数据存放在缓存中,如果缓存没有清理,那么会一直存在。
addEvent(window, 'load', function () {
var box = document.getElementById('box');
box.setAttribute('name', encodeURIComponent('李炎恢'));
box.save('bookinfo');
//box.removeAttribute('name');//删除userDate
//box.save('bookinfo');
box.load('bookinfo');
alert(decodeURIComponent(box.getAttribute('name')));
});
PS:这个数据文件也是保存在cookie目录中,只要清除cookie即可。如果指定过期日期,则到期后自动删除,如果没有指定就是永久保存。
Web存储
在比较高版本的浏览器,JavaScript提供了sessionStorage和globalStorage。在HTML5中提供了localStorage来取代globalStorage。而浏览器最低版本为:IE8+、Firefox3.5+、Chrome 4+和Opera10.5+。
PS:由于这三个对浏览器版本要求较高,我们就只简单的在Firefox了解一下,有兴趣的可以通过关键字搜索查询。
//通过方法存储和获取
sessionStorage.setItem('name', '李炎恢');
alert(sessionStorage.getItem('name'));
//通过属性存储和获取
sessionStorage.book = '李炎恢';
alert(sessionStorage.book);
//删除存储
sessionStorage.removeItem('name');
PS:由于localStorage代替了globalStorage,所以在Firefox、Opera和Chrome目前的最新版本已不支持。
//通过方法存储和获取
localStorage.setItem('name', '李炎恢');
alert(localStorage.getItem('name'));
//通过属性存储和获取
localStorage.book = '李炎恢';
alert(localStorage.book);
//删除存储
localStorage.removeItem('name');
PS:这三个对象都是永久保存的,保存在缓存里,只有手工删除或者清理浏览器缓存方可失效。在容量上也有一些限制,主要看浏览器的差异,Firefox3+、IE8+、Opera为5M,,Chrome和Safari为2.5M。