• js jquery 设置cookie


    1.js设置cookie

    //set cookie   
          
    function setcookie(name,value){   
        var Days = 30;   
        var exp  = new Date();   
        exp.setTime(exp.getTime() + Days*24*60*60*1000);   
        document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();   
    }   
      
    function getcookie(name){   
        var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));    
        if(arr != null){   
            return unescape(arr[2]);   
        }else{   
            return "";   
        }   
    }   
      
    function delcookie(name){   
        var exp = new Date();    
        exp.setTime(exp.getTime() - 1);   
        var cval=getCookie(name);   
        if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString();   
    }   
      
    //delcookie("GD-cms");   
    if (document.cookie != "") {    
        setcookie("GD-cms", "gae-django-cms");   
    }   
    alert(getcookie("GD-cms"));
    2.jquery设置cookie 是封装到一个方法里面的 直接调用 跟php 差不多 取 设置 或者 删除

    jQuery.cookie = function(name, value, options) {
        if (typeof value != 'undefined') { // name and value given, set cookie        options = options || {};
            if (value === null) {
                value = '';
                options = $.extend({}, options); // clone object since it's unexpected behavior if the expired property were changed            options.expires = -1;
            }
            var expires = '';
            if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
                var date;
                if (typeof options.expires == 'number') {
                    date = new Date();
                    date.setTime(date.getTime()   (options.expires * 24 * 60 * 60 * 1000));
                } else {
                    date = options.expires;
                }
                expires = '; expires='   date.toUTCString(); // use expires attribute, max-age is not supported by IE        }
            // NOTE Needed to parenthesize options.path and options.domain        // in the following expressions, otherwise they evaluate to undefined        // in the packed version for some reason...        var path = options.path ? '; path='   (options.path) : '';
            var domain = options.domain ? '; domain='   (options.domain) : '';
            var secure = options.secure ? '; secure' : '';
            document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
        } else { // only name given, get cookie        var cookieValue = null;
            if (document.cookie && document.cookie != '') {
                var cookies = document.cookie.split(';');
                for (var i = 0; i < cookies.length; i  ) {
                    var cookie = jQuery.trim(cookies[i]);
                    // Does this cookie string begin with the name we want?                if (cookie.substring(0, name.length   1) == (name   '=')) {
                        cookieValue = decodeURIComponent(cookie.substring(name.length   1));
                        break;
                    }
                }
            }
            return cookieValue;
        }

    };

    使用方法
    jQuery操作cookie的插件,大概的使用方法如下
    $.cookie('the_cookie'); //读取Cookie
    $.cookie('the_cookie', 'the_value'); //设置cookie的值
    $.cookie('the_cookie', 'the_value', {expires: 7, path: '/', domain: 'jquery.com', secure: true});//新建一个cookie 包括有效期 路径 域名等
    $.cookie('the_cookie', 'the_value'); //新建cookie
    $.cookie('the_cookie', null); //删除一个cookie

    设置一个名称为blog,值为css9.netcookie:

    $.cookie("blog", "css9.net");

    设置一个名称为blog,值为css9.netcookie,同时设置过期时间(expires属性)为7天:

    $.cookie("blog", "css9.net", { expires: 7 });

    设置一个名称为blog,值为css9.netcookie,设置过期时间(expires属性)为7天,同时设置cookiepath属性为”/admin

    $.cookie("blog", "css9.net", { path: '/admin', expires: 7 });

    读取Cookie

    读取名称为blogcookie值:

    alert( $.cookie("blog") );

    删除cookie

    $.cookie("example", null);

    如果你使用了jquery插件 建议 用jquery自带的 如果 没有 就不必为了设置cookie 引入jquery了 毕竟 插件加载还是比较大的

  • 相关阅读:
    Vue脚手架runtime-only中render函数的参数为什么是h?
    Vue中的 key 属性
    TypeScript安装以及使用
    Vue浏览器调试工具VueTools安装以及使用
    VueRouter路由跳转报错:vue-router.esm.js?fe87:2100 Uncaught (in promise) NavigationDuplicated
    VSCode使用webpack指令,因为在此系统上禁止运行脚本。
    尤雨溪在 vue3.0 beta 上推荐的 no webpack 小工具 vite
    celery task异步任务
    Notepad++使用
    Django基础013--redis开发
  • 原文地址:https://www.cnblogs.com/bily101/p/3622802.html
Copyright © 2020-2023  润新知