zoukankan      html  css  js  c++  java
  • H5页面 用户启动无痕浏览本地储存 localstorage 清楚数据

    移动端开发时,如果用户浏览器启用了无痕浏览,那么本地存储信息就会失效,会导致页面信息报错

    解决办法:

      先判断是否能适用 localStorage.setItem 

      如果不行在适用  cookie

      cookie还是不行的话,只能考虑传回后台,在进行拉去数据

        var tracelesStorage=function(name, val){ 
                if(arguments.length> 1){
                    try{
                        localStorage.setItem(name, val);
                    }catch(e){
                        setCookie(name,val,'d365');//抛出异常使用cookie存储
                    }
    
                }
                else {
                    var dataStr='';
                    try{
                        localStorage.setItem('cookieTest', 'test');//判断是否支持存储
                        dataStr = localStorage.getItem(name);
                    }catch(e){
                        dataStr = getCookie(name)//同样抛出异常我们使用cookie去取值
                    }
    
                    return dataStr;
                }
            }
    //取cookies值
    var getCookie=function(name){
        var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
        if(arr=document.cookie.match(reg)){
            if(!arr[2]){
                    return null ;
            }else if(arr[2] !='null'){
                    return unescape(arr[2]) ;
            }else{
                    return null ;
            };
        }else{
            return null;
        }
    
    }
    //存储Cookie
    var setCookie=function(name, value, time){
        var strsec = getsec(time);
        var exp = new Date();
        exp.setTime(exp.getTime() + strsec * 1);
        document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString()+";path=/";
    }
        var  getsec=function(str) {
        var str1 = str.substring(1, str.length) * 1;
        var str2 = str.substring(0, 1);
        if (str2 == "s") {
            return str1 * 1000;
        } else if (str2 == "h") {
            return str1 * 60 * 60 * 1000;
        } else if (str2 == "d") {
            return str1 * 24 * 60 * 60 * 1000;
        }
    }
  • 相关阅读:
    redis你要知道的事
    Nginx七层负载均衡的几种调度算法
    JQuery的父、子、兄弟节点选择器
    laravel通用和万能路由
    jquery竖向企业组织结构图
    phpexcel功能操作
    animatext.js使用介绍
    Centos firewalld开放端口
    获取微信accesstoken并文件缓存方式
    css处理文字不换行、换行截断、溢出省略号
  • 原文地址:https://www.cnblogs.com/ralapgao/p/9896375.html
Copyright © 2011-2022 走看看