IE5 ~IE8的浏览器是如何持久化数据的?

我们都知道,现代浏览器可以用sessonStorage和localStorge持久化数据,那么:

IE5 ~IE8的浏览器是如何持久化数据的- 用userData Behavior

 

User Data: 是微软为IE专门在系统中开辟的一块存储空间,所以说只支持Windows+IE的组合,实际测试在2000(IE5.5)、XP(IE6、IE7),Vista(IE7)下都是可以正常使用的。在XP下,一般位于C:\Documents and Settings\用户名\UserData,有些时候会在C:\Documents and Settings\用户名\Application Data\Microsoft\Internet Explorer\UserData。

 

第一步:

<div style="behavior:url(#default#userData)" id="dataStore"></div>

or

object.style.behavior = "url('#default#userData')"

 

第二步:

var dataStore = document.getElementById("dataStore");

dataStore.setAttribute("name", "Nicholas");

dataStore.setAttribute("book", "Professional JavaScript");

dataStore.save("BookInfo");

 

第三步:

关闭浏览器,再打开这个页面,并在这个页面的脚本里:

dataStore.load("BookInfo");

alert(dataStore.getAttribute("name")); //"Nicholas"

alert(dataStore.getAttribute("book")); //"Professional JavaScript"

就会把刚刚持久化的数据取出来并打印出来

 

第四步:如何删除持久化数据

dataStore.removeAttribute("name");

dataStore.removeAttribute("book");

dataStore.save("BookInfo");

第五步:如何设置过期时间:

比如设置1min后过期

var oTimeNow = new Date(); // Start Time

oTimeNow.setMinutes(oTimeNow.getMinutes() + 1);

var sExpirationDate = oTimeNow.toUTCString();

dataStore.expires = sExpirationDate;

dataStore.save("BookInfo");

注意:

  1. 持久化的数据时保存在 本机的

  1. 要在同一域名下,所谓的同一域名:

比如在下满这个地址的页面中设置了 userData持久化数据

http://localhost:8080/pages/multisituation/test.html

 

那么在下面这个test2页面中是可以访问到持久化数据的

http://localhost:8080/pages/multisituation/test2.html

 

但是如果目录不一致,域名不一致,协议不一致的话,就获取不到持久化数据,如下,在multisituation2/test2.html,这个路径下的页面就访问不到multisituation/test.html页面中设置的持久化数据

  1. 一致兼容到IE10

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值