<i id="whxwp"><option id="whxwp"><listing id="whxwp"></listing></option></i>
    <i id="whxwp"><option id="whxwp"><listing id="whxwp"></listing></option></i>

    <i id="whxwp"><option id="whxwp"></option></i>

    <delect id="whxwp"><rp id="whxwp"><big id="whxwp"></big></rp></delect>

      <i id="whxwp"><option id="whxwp"><listing id="whxwp"></listing></option></i>

      <i id="whxwp"><option id="whxwp"><listing id="whxwp"></listing></option></i>

        HTML5 使用localstorage 本地存储

        HTML 本地存储介绍

        最早的 Cookies 自然是大家都知道,问题主要就是太小,大概也就 4KB 的样子,而且 IE6 只支持每个域名20个cookies,太少了。优势就是大家都支持,而且支持得还蛮好。很早以前那些禁用 cookies 的用户也都慢慢的不存在了,就好像以前禁用 javascript 的用户不存在了一样。 userData 是 IE 的东西,垃圾。现在用的最多的是 Flash 吧,空间是 Cookie 的25倍,基本够用。再之后 Google 推出了 Gears,虽然没有限制,但不爽的地方就是要装额外的插件(没具体研究过)。到了 HTML 5把这些都统一了,官方建议是每个网站 5MB,非常大了,就存些字符串,足够了。比较诡异的是居然所有支持的浏览器目前都采用的 5MB,尽管有一些浏览器可以让用户设置,但对于网页制作者来说,目前的形势就 5MB 来考虑是比较妥当的。 支持的情况如上图,IE 在 8.0 的时候就支持了,非常出人意料。不过需要注意的是,IE、Firefox 测试的时候需要把文件上传到服务器上(或者 localhost),直接点开本地的 HTML 文件,是不行的。

        HTML5 localStorage 操作使用

        首先自然是检测浏览器是否支持本地存储。在 HTML5 中,本地存储是一个 window 的属性,包括 localStorage 和 sessionStorage,从名字应该可以很清楚的辨认二者的区别,前者是一直存在本地的,后者只是伴随着 session,窗口一旦关闭就没了。二者 用法完全相同。这里以localStorage为例。

        1 if(window.localStorage){ 
        2     alert(‘浏览器支持本地存储!‘); 
        3 }else{
        4     alert(‘浏览器不支持本地存储!‘); 
        5 }

        三种设置本地存储的方法存储数据的方法就是直接给window.localStorage添加一个属性。 例如:localStorage.a 或者 localStorage["a"]。它的读取、写、删除操作方法很简单,是以键值对的方式存在的。

        • localStorage.a = "iwanc";
        • localStorage["b"] = "HTML5";
        • localStorage.setItem("c","Jquery");

        三种访问本地存储的方法

        • localStorage.a;
        • localStorage["b"];
        • localStorage.getItem("c");

        其他扩展

        • localStorage.removeItem();   //清除
        • localStorage.clear();              //清除所有
        • localStorage.length;             //获得多少键
        • localStorage.key();               //获得存储的键内容
        • localStorage.getItem(localStorage.key(0))

        这里最推荐使用的自然是 getItem() 和 setItem(),清除键值对使用 removeItem()。如果希望一次性清除所有的键值对,可以使用 clear()。另外,HTML5还提供了一个key()方法,可以在不知道有哪些键值的时候使用,如下:

        var storage = window.localStorage;
        function showStorage(){
         for(var i=0;i<storage.length;i++){
          //key(i)获得相应的键,再用getItem()方法获得对应的值
          document.write(storage.key(i)+ " : " + storage.getItem(storage.key(i)) + "<br>");
         }
        }

         

        写一个最简单的,利用本地存储的计数器:

        $(function(){
        var storage = window.localStorage;
        if (!storage.getItem("pageLoadCount")) storage.setItem("pageLoadCount",0);
        storage.pageLoadCount = parseInt(storage.getItem("pageLoadCount")) + 1;//必须格式转换
        $("#count").html("最简单的本地存储的计数器:您一共浏览了 "+storage.pageLoadCount+" 次。");
        })

         

        需要注意的是,HTML5 本地存储只能存字符串,任何格式存储的时候都会被自动转为字符串,所以读取的时候,需要自己进行类型的转换。这也就是上一段代码中 parseInt 必须要使用的原因。 在 iPhone/iPad 上有时设置setItem()时会出现诡异的 QUOTA_EXCEEDED_ERR 错误,这时一般在 setItem 之前,先 removeItem() 就ok了。 另外,目前 javascript 使用非常多的 json 格式,如果希望存储在本地,可以直接调用 JSON.stringify() 将其转为字符串。读取出来后调用 JSON.parse() 将字符串转为 json 格式,如下所示:

         

        1 var details = {author:"iwanc","description":"HTML5","rating":100};
        2 storage.setItem("details",JSON.stringify(details));
        3 details = JSON.parse(storage.getItem("details"));
        JSON 对象在支持 localStorage 的浏览器上基本都支持,需要注意的是IE8,它支持 JSON,但如果添加了兼容模式代码(<meta content="IE=7" http-equiv="X-UA-Compatible"/>),切换到 IE7 模式就不行了(此时依然支持localStorage,虽然显示 window.localStorage 是 [object],而不是之前的 [object Storage],但测试发现 getItem()、setItem() 等均能使用)。
        相关文章
        相关标签/搜索
        三期內必开一肖 廉江市| 大名县| 石家庄市| 尼勒克县| 南木林县| 苏尼特右旗| 遵化市| 滨州市| 锦屏县| 名山县| 仁布县| 财经| 浪卡子县| 安达市| 黑山县| 梧州市| 水富县| 郸城县| 乌鲁木齐县| 垫江县| 祁阳县| 吉林市| 博野县| 稷山县| 循化| 平乡县| 凤翔县| 武平县| 扶余县| 金华市| 北宁市| 四子王旗| 西乌珠穆沁旗| 龙胜| 中阳县| 鄂尔多斯市| 德清县| 荆门市| 北辰区| 冀州市| 台中市| 沁源县| 昭通市| 天长市| 汉阴县| 嵊泗县| 诏安县| 西贡区| 新巴尔虎左旗| 贵州省| 都兰县| 如东县| 南京市| 太仆寺旗| 云龙县| 景德镇市| 汤原县| 新竹市| 余干县| 靖安县| 台东县| 孙吴县| 界首市| 翁源县| 芦山县| 北海市| 灌云县| 游戏| 甘肃省| 梁平县| 济南市| 柏乡县| 济南市| 湄潭县| 兰溪市| 仪陇县| 武乡县| 焉耆| 旺苍县| 玉田县| 南涧| 陈巴尔虎旗| 固安县| 晋宁县| 宾阳县| 汪清县| 伽师县| 德兴市| 威信县| 南投市| 鄱阳县| 威信县| 堆龙德庆县| 隆尧县| 达孜县| 仁怀市| 广宁县| 鹰潭市| 遂川县| 明光市| 东丽区| 陆良县| 巨鹿县| 章丘市| 石屏县| 科尔| 通河县| 会同县| 沙坪坝区| 安西县| 宣武区| 哈密市| 舟曲县| 醴陵市| 南华县| 鲁山县| 安图县| 广汉市| 岚皋县| 秦皇岛市| 云霄县| 咸宁市| 宿州市| 永定县| 永安市| 卢氏县| 宜良县| 章丘市| 镶黄旗| 东兰县| 晴隆县| 涿鹿县| 大悟县| 临漳县| 北宁市| 鄂尔多斯市| 璧山县| 贵定县| 阜宁县| 新巴尔虎左旗| 长兴县| 教育| 西乌| 忻城县| 永安市| 越西县| 临猗县| 大埔县| 安多县| 太白县| 玉环县| 五莲县| 冷水江市| 手游| 玛纳斯县| 鹿泉市| 纳雍县| 江山市| 云浮市| 区。| 漳浦县| 汝阳县| 武义县| 广汉市| 宁阳县| 揭阳市| 博罗县| 若羌县| 山阳县| 和田市| 吴旗县| 万载县| 安图县| 卓尼县| 大宁县| 德阳市| 金川县| 石楼县| 林甸县| 西和县| 灵台县| 博野县| 房山区| 安达市| 卫辉市| 满洲里市| 乐东| 双峰县| 龙山县| 湘潭市| 射洪县| 新化县| 蒲城县| 资源县| 宜春市| 会宁县| 临武县| 抚宁县| 承德市| 曲沃县| 绥宁县| 罗甸县| 新营市| 廊坊市| 庄河市| 雅安市| 冀州市| 西乌珠穆沁旗| 伊金霍洛旗| 凭祥市| 雷州市| 潞西市| 饶平县| 九龙县| 梁河县| 荥阳市| 利辛县| 青岛市| 新巴尔虎右旗| 萍乡市| 碌曲县| 收藏| 五指山市| 田林县| 元江| 衡东县| 嵩明县| 宕昌县| 元江| 延吉市| 平山县| 石棉县| 南昌县| 公主岭市| 平陆县| 裕民县| 常山县| 电白县| 永胜县| 聂荣县| 广平县| 中西区| 呼和浩特市| 万盛区| 湘乡市| 南阳市| 黎城县| 措勤县| 当阳市| 牡丹江市| 喀喇| 富蕴县| 花垣县| 门头沟区| 安宁市| 贡嘎县| 盘山县| 台东市| 远安县| 迁安市| 塘沽区| 扶风县| 绥德县| 科技| 西乌珠穆沁旗| 长沙市| 商都县| 镇远县| 南漳县| 武川县| 弥渡县| 河津市| 西昌市| 兴安盟| 庆安县| 宿州市| 茌平县| 团风县| 沅江市| 三门峡市| 怀安县| 布尔津县| 阜南县| 乌拉特中旗| 阿克| 琼结县| 扬州市| 攀枝花市| 渝中区| 鄂伦春自治旗| 木兰县| 信阳市| 江永县| 小金县| 历史| 兴隆县| 海口市| 富阳市| 柳江县| 修武县| 吕梁市| 三台县| 固镇县| 嘉善县| 盐边县| 读书| 沙雅县| 博湖县| 普陀区| 霞浦县| 诏安县| 全椒县| 葵青区| 盐边县| 饶阳县| 古蔺县| 顺平县| 广东省| 湾仔区| 衡阳县| 红河县| 永吉县| 镇江市| 金溪县| 襄樊市| 都昌县| 胶南市| 黄骅市| 神木县| 闸北区| 延长县| 阿拉善盟| 鸡东县| 宜春市| 宜宾市| 乐东| 句容市| 广丰县| 陆河县| 甘洛县| 建德市| 安溪县| 开平市| 佛山市| 砚山县| 简阳市| 确山县| 潜江市| 舟山市| 英吉沙县| 安远县| 波密县| 竹山县| 刚察县| 南城县| 桃江县| 周至县| 襄汾县| 耿马| 黎平县| 呈贡县| 广河县| 梁平县| 东莞市| 榆树市| 裕民县| 柳州市| 凤阳县| 渭源县| 开封县| 互助| 侯马市| 木兰县| 信丰县| 越西县| 巴青县| 石嘴山市| 永兴县| 永新县| 托克托县| 沐川县| 尤溪县| 宣武区| 息烽县| 铅山县| 玉龙| 盘山县| 平湖市| 澜沧| 延川县| 常熟市| 孟州市| 江永县| 淮安市| 长海县| 安徽省| 扬州市| 萨嘎县| 绥德县| 叶城县| 札达县| 抚州市| 两当县| 辉南县| 聂拉木县| 荣昌县| 虞城县| 乌恰县| 乾安县| 榆社县| 辉县市| 陇西县| 永寿县| 大连市| 怀安县| 惠州市| 关岭| 呼玛县| 商南县| 阿拉善左旗| 武隆县| 云龙县| 关岭| 屯昌县| 泸水县| 蓬安县| 万山特区| 龙岩市| 怀来县| 邵阳县| 双辽市| 延长县| 阳谷县| 尼木县| 大宁县| 新密市| 湄潭县| 黔南| 新营市| 龙井市| 漳州市| 林甸县| 历史| 安龙县| 定安县| 高青县| 大足县| 突泉县| 米脂县| 新津县| 西乌珠穆沁旗| 三台县| 乌拉特后旗| 香港| 聂拉木县| 满洲里市| 青岛市| 金门县| 汪清县| 五原县| 黑山县| 正定县| 武山县| 巧家县| 石首市| 大埔县| 东海县| 西畴县| 邢台市| 开化县| 四川省| 广西| 奇台县| 高平市| 宣化县| 吉木萨尔县| 新平| 通许县| 芜湖市| 孝义市| 易门县| 惠东县| 南陵县| 莫力| 新乡县| 巨鹿县| 泸定县| 临汾市| 如皋市| 新田县| 清水县| 平山县| 镶黄旗| 延庆县| 肃南| 巢湖市| 讷河市| 呼玛县| 乌海市| 宁陕县| 万州区| 丹东市| 安康市| 靖宇县| 天气| 泽州县| 讷河市| 九龙坡区| 聂荣县| 金秀| http://wap.jp1860conducto.fun http://jp1860suggesto.fun http://www.jp1860talko.fun http://m.jp1860cruiseo.fun http://m.jp1860focuso.fun http://m.jp1860zarko.fun http://m.jp1860luncho.fun http://m.jp1860raceo.fun http://m.jp1860nearo.fun http://www.jp1860stateo.fun http://www.jp1860issueo.fun http://www.jp1860patterno.fun http://m.jp1860challengeo.fun http://m.jp1860clubo.fun http://www.jp1860stationo.fun