zoukankan      html  css  js  c++  java
  • jQuery.cookie 的源码


    jQuery.cookie = 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();
    }
    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 {
    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]);
    if (cookie.substring(0, name.length + 1) == (name + '=')) {
    cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
    break;
    }
    }
    }
    return cookieValue;
    }
    };

    使用如下


    <html>
    <head>
    <title>JQuery-Cookie插件</title>
    <script type="text/javascript" src="jquery-1.4.js"></script>
    <script type="text/javascript" src="jquery.cookie.js"></script>
    </head>
    <body>
    <a href="#">设置cookie1</a><br>
    <a href="#">设置cookie2</a><br>
    <a href="#">获取cookie</a><br>
    <a href="#">删除cookie</a><br>
    </body>
    </html>
    <script type="text/javascript">
    $(function(){
    var COOKIE_NAME = 'test_cookie';
    //设置cookie,通过时间间隔
    $('a').eq(0).click(function() {
    $.cookie(COOKIE_NAME, 'test', { path: '/', expires: 1 });
    return false;
    });
    // 设置cookie,到期时间
    $('a').eq(1).click(function() {
    var date = new Date();
    date.setTime(date.getTime() + (1 * 24 * 60 * 60 * 1000));
    $.cookie(COOKIE_NAME, 'test', { path: '/', expires: date });
    return false;
    });
    // 获取 cookie
    $('a').eq(2).click(function() {
    alert($.cookie(COOKIE_NAME));
    return false;
    });
    // 删除cookie
    $('a').eq(3).click(function() {
    $.cookie(COOKIE_NAME, null, { path: '/' });
    return false;
    });
    });
    </script>

  • 相关阅读:
    JavaScript基础
    CSS基础
    HTML基础
    LeetCode OJ:Subsets II(子集II)
    LeetCode OJ:Combination Sum III(组合之和III)
    LeetCode OJ:Minimum Size Subarray Sum(最小子数组的和)
    LeetCode OJ:House Robber(住宅窃贼)
    LeetCode OJ:Minimum Path Sum(最小路径和)
    LeetCode OJ:Minimum Depth of Binary Tree(二叉树的最小深度)
    LeetCode OJ:Rotate Array(倒置数组)
  • 原文地址:https://www.cnblogs.com/lcuzhanglei/p/2593471.html
Copyright © 2011-2022 走看看