sessionStorage 移动端兼容问题

开发移动端项目,需要前端页面存储一些用户数据是一个常见的功能,sessionStorage和localStorage就是常用的选择,最近移动端项目用到sessionStorage时遇到一些问题,

(如:vivo手机自带浏览器)问题如下:

A.html页面记录一条数据,

sessionStorage.setItem("data","123");

B.html页面获取数据

sessionStorage.getItem("data");//结果为null;

 

测试结果:其实并不是这个浏览器不支持sessionStorage,因为还能获取到window.sessionStorage这个对象,sessionStorage是一个会话级别的存储,有些浏览器在跳转的时候是系统打开了一个新的webView,把原来的关了,也就相当于在浏览器打开了一个新的窗口。这样就和sessionStorage原理冲突了,自然在新的页面就获取不到了;

由于业务逻辑需求,我还是选择了sessionStorage;我的解决办法是先存到localStorage; 用localStorage做了一个过渡,新的页面window.localStorage.clear();

 

posted @ 2017-11-15 11:00  周福威  阅读(2954)  评论(2编辑  收藏  举报