一个简单的,轻量级的JQuery插件用来处理浏览器cookie-jquery.cookie.1.4.1.js

一个简单的轻量级的JQuery插件用来处理浏览器cookie

jquery.cookie.1.4.1  相对与 jquery.cookie.1.3.x 增加了 许多方法


安装
先包括脚本jQuery库后在引用 jquery.cookie.js 文件:

<script src="/path/to/jquery.cookie.js"></script>

用法
创建cookie:

$.cookie('name', 'value');

创建到期的cookie,有效期7天:

$.cookie('name', 'value', { expires: 7 });

创建到期的cookie,有效期7天,有效范围整个网站:

$.cookie(‘name’, ‘value’, { expires: 7, path: ‘/’ });

$.cookie('name', 'value', { expires: 7, path: '/' });

读取Cookie:

$.cookie('name'); // => "value"
$.cookie('nothing'); // => undefined  不存在的值

读取所有可用的cookie:返回json对象

$.cookie(); // => { "name": "value" }

删除Cookie:

//当Cookie被成功删除,则返回true,否则为false

$.removeCookie('name'); // => true
$.removeCookie('nothing'); // => false
$.cookie('name',null);//v1.3中的老方法

//需要使用相同的属性(路径,域),为什么该cookie用写( 删除cookie 需要相同的 作用范围: 路径 域名 )

$.cookie('name', 'value', { path: '/' });

//这是行不通的!错误方法!

$.removeCookie('name'); // => false

//这将工作!正确方法!

$.removeCookie('name', { path: '/' }); // => true

注意:在删除一个cookie时,必须传递被用来设置Cookie,除非你靠着这是默认选项完全相同的路径,域和安全选项。

———————————
组态
raw
默认情况下,cookie值进行编码/写入/读取时,使用encodeURIComponent / decodeURIComponent解码。绕过此设置原料为true:

$.cookie.raw = true;

JSON
打开作为cookie的值传递JSON对象的自动存储。假设JSON.stringify和JSON.parse:

$.cookie.json = true;

————————–

cookie的选项

cookie的属性可以在全球范围通过设置$ .cookie.defaults对象的属性或单独为通过使一个普通目的是选项的参数每次调用$ .cookie()来设置。每看涨期权覆盖默认选项。
到期(单位:天)

expires: 365

定义cookie的生命周期。值可以是将被解释为天从创建或Date对象的时间数。如果省略,cookie变成一个会话cookie。
路径

path: '/'

定义在哪里cookie有效路径。默认情况下,cookie的路径是cookie的创建页面(标准浏览器的行为)的路径。如果你想使其可用于例如在整个域中使用路径:’/’。默认值:在创建cookie的网页的路径。

——————————————–

注意有关Internet Explorer中:

    由于底层的WinINET InternetGetCookie实现一个不起眼的错误,如果与含有一个文件名的路径属性设置IE的的document.cookie不会返回的cookie。

(在Internet Explorer中的Cookie内幕(FAQ))

这意味着使用路径中的一个不能设置的路径:window.location.pathname在情况下,这种路径名包含像文件名,以便:/check.html(或至少,例如饼干不能正确地读出)。

domain: 'example.com'

定义在哪里cookie有效的域。默认值:在创建cookie的网页的域名。
安全

secure: true

如果为true,cookie的传输需要一个安全协议(HTTPS)。默认值:false。

转换器
提供一个转换函数作为任选最后一个参数进行读取,以cookie的值更改为在飞行一个不同的表示。
实例解析值成数:

$.cookie('foo', '42');
$.cookie('foo', Number); // => 42

与已经使用转义(第三方Cookie)进行编码处理的cookie:

$.cookie.raw = true;
$.cookie('foo', unescape);

您可以通过任意转换功能。

官方地址:https://github.com/carhartl/jquery-cookie

备用下载:jquery-cookie-v1.4.1

发表评论

邮箱地址不会被公开。 必填项已用*标注