/**
* Cookie plugin
*
* Copyright (c) 2006 Klaus Hartl (stilbuero.de)
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
*
*/
/**
* Create a cookie with the given name and value and other optional parameters.
*
* @example $.cookie('the_cookie', 'the_value');
* @desc Set the value of a cookie.
(设置一个已存在cookie的值。)
* @example $.cookie('the_cookie', 'the_value', { expires: 7, path: '/', domain: 'jquery.com', secure: true });
* @desc Create a cookie with all available options.
(创建一个全属性的cookie,包括保存时间,路径,域,是否使用安全的传输协议。)
* @example $.cookie('the_cookie', 'the_value');
* @desc Create a session cookie.
(创建一个会话cookie,浏览器关闭则会被删除。)
* @example $.cookie('the_cookie', null);
* @desc Delete a cookie by passing null as value. Keep in mind that you have to use the same path and domain
* used when the cookie was set.
*(把value设为null即删除cookie,但是必须保证与设置时的路径,域相同。因为不同的路径或域,相同的name表示不同的cookie。)
* @param String name The name of the cookie.
* @param String value The value of the cookie.
* @param Object options An object literal containing key/value pairs to provide optional cookie attributes.
* @option Number|Date expires Either an integer specifying the expiration date from now on in days or a Date object.
* If a negative value is specified (e.g. a date in the past), the cookie will be deleted.
* If set to null or omitted, the cookie will be a session cookie and will not be retained
* when the the browser exits.
(参数expires :可以设置为数字(表示保存的天数),和全球标准时间 (UTC)格式的日期字符串。)
* @option String path The value of the path atribute of the cookie (default: path of page that created the cookie).
(cookie保存的目录,默认值为保存cookie时的页面的路径。)
* @option String domain The value of the domain attribute of the cookie (default: domain of page that created the cookie).
(cookie保存的目录,默认值为保存cookie时的页面的域。).
* @option Boolean secure If true, the secure attribute of the cookie will be set and the cookie transmission will
* require a secure protocol (like HTTPS).
(Secure参数:Secure 为true则代表下面介绍的设置为“secure”,false则为下面介绍的设置为为空的意思。)
(Secure – 安全。指定cookie的值通过网络如何在用户和WEB服务器之间传递。这个属性的值或者是“secure”,或者为空。缺省情况下,该属性为空,也就是使用不安全的HTTP连接传递数据。如果一个 cookie 标记为secure,那么,它与WEB服务器之间就通过HTTPS或者其它安全协议传递数据。不过,设置了secure属性不代表其他人不能看到你机器本地保存的cookie。换句话说,把cookie设置为secure,只保证cookie与WEB服务器之间的数据传输过程加密,而保存在本地的cookie文件并不加密。如果想让本地cookie也加密,得自己加密数据。)
* @type undefined
*
* @name $.cookie
* @cat Plugins/Cookie
* @author Klaus Hartl/klaus.hartl@stilbuero.de
*/
/**
* Get the value of a cookie with the given name.
*
* @example $.cookie('the_cookie');
* @desc Get the value of a cookie.
*
(根据name获取一个cookie)
* @param String name The name of the cookie.
* @return The value of the cookie.
* @type String
*
* @name $.cookie
* @cat Plugins/Cookie
* @author Klaus Hartl/klaus.hartl@stilbuero.de
*/
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;
}
};
同名的 cookie,不同的 domain 或不同的 path,属不同的 cookie;
同名的 cookie,相同的 domain 且相同的 path,不同的 expires,属同一个 cookie。
分享到:
相关推荐
要使用jQuery Cookie插件,首先需要确保项目中已经引入了jQuery库。然后,你可以通过以下几种方式获取并引入jQuery Cookie插件: 1. **直接下载**:从官方网站或者其他可信源下载`jquery.cookie.js`文件,将其放在...
在这种场景下,jQuery Cookie插件是一个实用工具,它允许开发者在客户端存储数据,即使页面刷新或关闭,也能持久化用户的浏览信息。本文将详细讲解如何利用jQuery Cookie插件实现"最近浏览"功能。 首先,jQuery ...
jQuery的Cookie插件 cookies cookies 是一个强大的 jQuery 用来操作 Cookie 的插件。除了常见的操作 $.cookies.set( 'sessid', 'dh3tr62fghe' ); var sessid = $.cookies.get( 'sessid' ); $.cookies.del( 'sessid...
### jQuery Cookie插件详解 #### 一、简介 在Web开发中,Cookie是客户端存储机制的一种,被广泛应用于用户身份验证、保存用户偏好等场景。然而原生JavaScript操作Cookie较为繁琐,为此,jQuery社区提供了jQuery ...
jQuery Cookie插件提供了简单易用的API,让开发者可以方便地操作Cookie,无需关心底层实现细节。 描述中提到的“可以跟jQuery集成,也可以单独使用”,意味着这个插件设计得很灵活。如果你的项目已经使用了jQuery,...
jQuery操作cookie的插件,大概的使用方法如下$.cookie('the_cookie'); //读取Cookie值$.cookie(’the_cookie’, ‘the_value’); //设置cookie的值$.cookie(’the_cookie’, ‘the_value’, {expires ‘/’, domain ...
总结起来,jQuery Cookie插件使得在JavaScript环境中操作Cookie变得简单易行。无论是设置、读取还是删除Cookie,或是设定有效期和范围,都有明确的API供开发者调用。通过学习并应用这些知识点,你可以提升Web应用...
**jQuery Cookie插件详解** jQuery Cookie插件是一个非常实用的工具,它为JavaScript开发者提供了一个简单易用的接口,用于处理浏览器中的Cookie。Cookie在Web开发中起着至关重要的作用,它允许服务器存储和检索...
而"最新jquery操作cookie插件"正是针对Cookie管理提供的一种便捷解决方案。Cookie是服务器在用户浏览器上存储小量信息的一种机制,常用于用户会话管理、个性化设置和跟踪用户行为等场景。 这款jQuery插件专为简化...
**jQuery Cookie 插件详解** 在网页开发中,Cookie 是一种常见的存储用户数据的方法,它允许网站在用户浏览器上保存小量信息。jQuery Cookie 插件是基于 jQuery 的一个强大工具,它为开发者提供了简单易用的接口来...
《jQuery 1.4.2与jQuery Cookie插件详解》 在Web开发中,JavaScript库jQuery因其简洁的语法和强大的功能而备受青睐。本篇将深入探讨jQuery 1.4.2版本及其与jQuery Cookie插件的使用,帮助开发者更好地理解和应用这...
jquery cookie.js 官方下载,一款优秀的 jquery 插件,提供了非常轻量级、简单、实用的操作 cookie 的方法,包括读写、删除等操作,jquery cookie 路径,jquery cookie 时间,jquery cookie 有效期,jquery cookie ...
在这个场景下,`jquery.cookie` 插件的应用可以帮助我们实现一个更智能的弹窗策略:用户关闭弹窗后,一天内不再显示。接下来,我们将详细讲解如何使用 `jquery.cookie` 插件以及实现这个功能的具体步骤。 首先,`...
**jQuery.cookie插件详解** jQuery.cookie插件是一个轻量级的JavaScript库,它为jQuery提供了简单易用的接口,用于在浏览器中操作Cookie。Cookie是Web开发中常用的一种存储用户数据的方法,它允许我们在用户的...
而jquery.cookie插件则是jQuery的一个扩展,用于在浏览器中管理cookies,这是一种在客户端存储小量数据的技术。 首先,要使用jQuery和jquery.cookie插件,你需要在HTML文件中引入它们的CDN链接或者将文件下载到本地...
标题"一天弹一次jquery.cookie插件.zip"指的是一个专门设计的jQuery插件,这个插件的核心功能是控制弹窗(通常是指网页中的提示、广告或通知)只在用户首次访问或者关闭后的一天内显示一次。这种功能在网页用户体验...
jQuery库的jQuery Cookie插件简化了JavaScript操作Cookie的过程,使开发者能够更加便捷地进行Cookie的设置、读取和删除。本文将围绕"jquery-cookie-master.jar"这个压缩包文件,详细讲解jQuery Cookie的原理、使用...
**jQuery Cookie插件详解** `jQuery.cookie.js` 是一个轻量级的JavaScript库,用于在浏览器端管理和操作Cookie。这个插件使得与Cookie交互变得简单,尤其在处理用户偏好设置、临时存储数据或者实现基本的会话管理时...
cookie设置插件jquery.cookie.min.js 文章《javascript设置cookie高级篇可跨域访问》https://blog.csdn.net/cplvfx/article/details/117822956
jQuery并没有内置专门的Cookie插件,但可以通过第三方插件如`jquery.cookie.js`来扩展jQuery的功能。不过,这里我们将主要关注使用原生JavaScript方法与jQuery结合的方式来处理Cookie。 1. **设置Cookie** 要设置...