【jQuery】cookie插件

通过该插件的学习使我对cookie、Date()、getDate()、setDate()、toUTCString()有了更直观的了解,具体分析见注释:

function(key, value, options),调用该插件需要传入三个参数

如:

var COOKIE_NAME = ‘test_cookie‘;
var ADDITIONAL_COOKIE_NAME = ‘additional‘;
$(‘a‘).eq(0).click(function() { // 用天数设置 cookie
$.cookie(COOKIE_NAME, ‘test‘, { path: ‘/‘, expires: 10 });
return false;
});

/*!
 * jQuery Cookie Plugin
 * https://github.com/carhartl/jquery-cookie
 *
 * Copyright 2011, Klaus Hartl
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.opensource.org/licenses/GPL-2.0
 */
(function($) {
    $.cookie = function(key, value, options) {

        // key and at least value given, set cookie...
        if (arguments.length > 1 && (!/Object/.test(Object.prototype.toString.call(value)) || value === null || value === undefined)) {
            options = $.extend({}, options);

            if (value === null || value === undefined) {
                options.expires = -1;
            }

            if (typeof options.expires === ‘number‘) {
                var days = options.expires, t = options.expires = new Date();//创建一个Date对象,不传参数的情况下,该对象自动获取当前日期和时间
                t.setDate(t.getDate() + days);//getDate(),返回日期月份中的天数(1到31)
                                              //setDate(),设置日期月份中的天数,最终options.expires指向这个期限
            }

            value = String(value);

            return (document.cookie = [//只设置了cookie的值和有效日期,其余为空,使用Date对象的toUTCString()格式化Date对象
                encodeURIComponent(key), ‘=‘, options.raw ? value : encodeURIComponent(value),
                options.expires ? ‘; expires=‘ + options.expires.toUTCString() : ‘‘, // use expires attribute, max-age is not supported by IE
                options.path    ? ‘; path=‘ + options.path : ‘‘,
                options.domain  ? ‘; domain=‘ + options.domain : ‘‘,
                options.secure  ? ‘; secure‘ : ‘‘
            ].join(‘‘));
        }

        // key and possibly options given, get cookie...
        options = value || {};
        var decode = options.raw ? function(s) { return s; } : decodeURIComponent;

        var pairs = document.cookie.split(‘; ‘);
        for (var i = 0, pair; pair = pairs[i] && pairs[i].split(‘=‘); i++) {
            if (decode(pair[0]) === key) return decode(pair[1] || ‘‘); // IE saves cookies with empty string as "c; ", e.g. without "=" as opposed to EOMB, thus pair[1] may be undefined
        }     //判断COOKIE_NAME是否相同,返回pair[1],即cookie值,遇return直接结束
        return null;
    };
})(jQuery);
时间: 2024-10-13 18:29:19

【jQuery】cookie插件的相关文章

jquery.cookie插件使用

jquery.cookie插件是一个在浏览器端对cookie进行操作的,使用非常方便. jquery.cookie中的操作: jquery.cookie.js插件:百度即可下载 创建一个会话cookie: $.cookie(‘cookieName’,'cookieValue’); 注:当没有指明cookie时间时,所创建的cookie有效期默认到用户浏览器关闭止,故被称为会话cookie. 创建一个持久cookie: $.cookie(‘cookieName’,'cookieValue’,{ex

jQuery.cookie插件用法自我总结

用的jQuery.cookie -----一个封装好了cookie的插件.(基于jQuery) 我这只需要调用. $.cookie("c_name", c_value,{expires:7}); //可通过alert($.cookie("c_name"));得到你要存储的内容,这样测试cookie是否存储: c_name:要创建的cookie的名字: c_value:值或者说要存储的内容: expires:7存储日期: $.cookie("c_name&q

jquery cookie插件

jquery-cookie下载地址:http://www.bootcdn.cn/jquery-cookie/ 使用方法: 1.引入jQuery.Cookie.js插件. <script src="jquery.cookie.js" type="text/javascript"></script> 2.具体属性及其调用方法. 参考文档:http://www.bootcdn.cn/jquery-cookie/readme/ //cookie插件方

jquery.cookie 插件使用方法

一个轻量级的cookie 插件,可以读取.写入.删除 cookie. jquery.cookie.js 的配置 首先包含jQuery的库文件,在后面包含 jquery.cookie.js 的库文件. <script type="text/javascript" src="js/jquery-1.6.2.min.js"></script> <script type="text/javascript" src="

jquery.cookie插件官方下载地址与使用方法

下载地址:https://github.com/carhartl/jquery-cookie jquery.cookie使用方法: 创建 临时cookie: $.cookie('name', 'value'); 创建有效时间期限为7天的 cookie: $.cookie('name', 'value', { expires: 7 }); 创建有效期限为7天并带路径的 cookie: $.cookie('name', 'value', { expires: 7, path: '/' }); 读取

jquery cookie插件轻松实现切换背景颜色

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>更换背景颜色</title> <style type="text/css"> #bg{width: 90%;height: 500px;background: rgba(0,0,0,.2);position: fixed;bottom: 10px;left: 0;r

jQuery插件之Cookie插件使用方法~

一.介绍 1-1.jQuery.Cookie.js插件是一个轻量级的Cookie管理插件.下载地址:jQuery-cookie.js  有需要的朋友,右键另存为即可! 二.使用方法 2-1.引入jQuery及jQuery.Cookie.js插件. <script src="jQuery.x.x.x.js" type="text/javascript"></script> <script src="jquery.cookie.j

jquery.cookie() 方法的使用(读取、写入、删除)

jquery.cookie() 方法:一个轻量级的cookie 插件,可以读取.写入.删除 cookie,下面有个不错的数量,大家可以学习下 一个轻量级的cookie 插件,可以读取.写入.删除 cookie. jquery.cookie.js 的配置 首先包含jQuery的库文件,在后面包含 jquery.cookie.js 的库文件. <script type="text/javascript" src="js/jquery-1.6.2.min.js"&g

jQuery.cookie

了解cookie先了解一下知识点: Navigator (一般是浏览器)对象包含有关浏览器的信息. Navigator userAgent:是一个只读字符串,声明了浏览器用于HTTP请求的用户代理头的值. 用户代理头:用来标识浏览器客户端信息,可根据用户代理字符串给出不同的css文件,以保证在不同的浏览器上均能够展现出最好的结果. cookie是由服务器端生成,发送给userAgent(一般是浏览器),浏览器会将cookie的key/value保存到某个目录下的文本文件内,下次请求同一网站时就会

关于 jquery cookie的用法

东钿微信公众平台新版上线 需要一个引导用户操作步骤.设置一个cookie师傅偶第一次访问此页面 .如果是则跳出用户引导,如果不是,正常显示. 一开始在百度了一段jquery cookie插件,也没仔细看,直接拿过来用,在pc端测试时好时坏,手机端也是,没那么在意.但是上级领导要求一定要修此bug,于是乎,看了一下这个cookie插件 ,插件里面是通过判断url.然后微信里面的url经常变迁万化,所以时好时坏. 接下来百度了几天,群里也问了许久没一人回答.好多人听不到我要cookie干嘛 .可能是