jQuery Cookie

🌙
手机阅读
本文目录结构

插件 jQuery.cookie 中文 API 文档

一个简单,轻量级的 jQuery 插件,用于读取,写入和删除 cookie。

如果您正在查看此内容,那么您正在阅读旧存储库的文档。 查看最新向后兼容版本(1.5.1)的文档。

安装

在 jQuery 库之后包含脚本(除非你以其他方式打包脚本):

不要直接从 GitHub 包含脚本(http://raw.github.com/ …)。该文件作为 text / plain 提供,因此在 Windows 7 上的 Internet Explorer 中被阻止(因为 MIME 类型错误)。底线:GitHub 不是 CDN。

该插件也可以作为 AMD 或 CommonJS 模块加载。

用法

创建会话 cookie:

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

从那时起 7 天后创建过期的 cookie:

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

创建过期的 cookie,在整个站点上有效:

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

读取 cookie:

$.cookie('name'); // => "value"
$.cookie('nothing'); // => undefined

阅读所有可用的 cookies:

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

删除 cookie:

// Returns true when cookie was successfully deleted, otherwise false
$.removeCookie('name'); // => true
$.removeCookie('nothing'); // => false

// Need to use the same attributes (path, domain) as what the cookie was written with
$.cookie('name', 'value', { path: '/' });
// This won't work!
$.removeCookie('name'); // => false
// This will work!
$.removeCookie('name', { path: '/' }); // => true

注意:删除 cookie 时,必须传递用于设置 cookie 的完全相同的路径,域和安全选项,除非您依赖于默认选项。

组态

生的

默认情况下,使用 encodeURIComponent/ 时,写入 / 读取时会对 cookie 值进行编码 / 解码 decodeURIComponent。通过将 raw 设置为 true 来绕过此:

$.cookie.raw = true;

JSON

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

$.cookie.json = true;

可以通过设置 $.cookie.defaults 对象的属性来全局设置 Cookie 属性,也可以 $.cookie() 通过将普通对象传递给 options 参数来为每个调用单独设置 Cookie 属性。每次调用选项会覆盖默认选项。

到期

expires: 365

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

路径

path: '/'

定义 cookie 有效的路径。默认情况下,cookie 的路径是创建 cookie 的页面的路径(标准浏览器行为)。如果您希望在整个域使用中使其可用 path: ‘/‘。默认值:创建 cookie 的页面路径。

关于 Internet Explorer 的注意事项:

由于底层 WinINET InternetGetCookie 实现中存在一个模糊的错误,如果使用包含文件名的路径属性设置,IE 的 document.cookie 将不会返回 cookie。

(来自 Internet Explorer Cookie Internals(FAQ))

这意味着 path: window.location.pathname 如果这样的路径名包含如下所示的文件名,则无法设置路径:( /check.html 或者至少,这样的 cookie 无法正确读取)。

domain: 'example.com'

定义 cookie 有效的域。默认值:创建 cookie 的页面域。

安全

secure: true

如果为 true,则 cookie 传输需要安全协议(https)。默认值:false。

转换器

提供转换函数作为可选的最后一个参数进行读取,以便将 cookie 的值动态更改为不同的表示形式。

将值解析为数字的示例:

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

处理使用 escape(第三方 cookie)编码的 cookie:

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

您可以传递任意转换函数。

AXIHE / 精选教程

浏览全部教程

HTML

CSS

JS

关于朱安邦

我叫 朱安邦,阿西河的站长,在杭州。

以前是一名平面设计师,后来开始接接触前端开发,主要研究前端技术中的JS方向。

业余时间我喜欢分享和交流自己的技术,欢迎大家关注我的 Bilibili

关注我: Github / 知乎

如果你加我的私人微信,麻烦写上您的 称呼,所在地区,职业,方便我备注,谢谢


本站的微信公众号

阿西河前端教程

Anbang

安邦的私人微信

微信号: yaolushan

Anbang

Bilibili(B站)

朱安邦

Anbang