jquery操作cookie

  1. jQuery.cookie = function(name, value, options) {  
  2.     if (typeof value != 'undefined') { // name and value given, set cookie  
  3.         options = options || {};  
  4.         if (value === null) {  
  5.             value = '';  
  6.             options.expires = -1;  
  7.         }  
  8.         var expires = '';  
  9.         if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {  
  10.             var date;  
  11.             if (typeof options.expires == 'number') {  
  12.                 date = new Date();  
  13.                 date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));  
  14.             } else {  
  15.                 date = options.expires;  
  16.             }  
  17.             expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE  
  18.         }  
  19.         var path = options.path ? '; path=' + options.path : '';  
  20.         var domain = options.domain ? '; domain=' + options.domain : '';  
  21.         var secure = options.secure ? '; secure' : '';  
  22.         document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');  
  23.     } else { // only name given, get cookie  
  24.         var cookieValue = null;  
  25.         if (document.cookie && document.cookie != '') {  
  26.             var cookies = document.cookie.split(';');  
  27.             for (var i = 0; i < cookies.length; i++) {  
  28.                 var cookie = jQuery.trim(cookies[i]);  
  29.                 // Does this cookie string begin with the name we want?  
  30.                 if (cookie.substring(0, name.length + 1) == (name + '=')) {  
  31.                     cookieValue = decodeURIComponent(cookie.substring(name.length + 1));  
  32.                     break;  
  33.                 }  
  34.             }  
  35.         }  
  36.         return cookieValue;  
  37.     }  

  1. };  
  2. function getcookie(name) {  
  3. var cookie_start = document.cookie.indexOf(name);  
  4. var cookie_end = document.cookie.indexOf(";", cookie_start);  
  5. return cookie_start == -1 ? '' : unescape(document.cookie.substring(cookie_start + name.length + 1, (cookie_end > cookie_start ? cookie_end : document.cookie.length)));  
  6. }  
  7. function setcookie(cookieName, cookieValue, seconds, path, domain, secure) {  
  8.     var expires = new Date();  
  9.     expires.setTime(expires.getTime() + seconds);  
  10.     document.cookie = escape(cookieName) + '=' + escape(cookieValue)  
  11.                                             + (expires ? '; expires=' + expires.toGMTString() : '')  
  12.                                             + (path ? '; path=' + path : '/')  
  13.                                             + (domain ? '; domain=' + domain : '')  
  14.                                             + (secure ? '; secure' : '');  
  15. $.extend({
     
    /**
     1. 设置cookie的值,把name变量的值设为value  
    example $.cookie(’name’, ‘value’);
     2.新建一个cookie 包括有效期 路径 域名等
    example $.cookie(’name’, ‘value’, {expires: 7, path: ‘/’, domain: ‘jquery.com’, secure: true});
    3.新建cookie
    example $.cookie(’name’, ‘value’);
    4.删除一个cookie
    example $.cookie(’name’, null);
    5.取一个cookie(name)值给myvar
    var account= $.cookie('name');
    **/
        cookieHelper:function(name, value, options) {
            if (typeof value != 'undefined') { // name and value given, set cookie
                options = options || {};
                if (value === null) {
                    value = '';
                    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
                }
                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;
            }
        }
     
    });

  16. }  



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值