jQuery 可以通过 jquery.cookie.js 插件来操作 Cookie。

用NuGet安装:PM>Install-Package js-cookie -Version

官网:https://www.npmjs.com/package/js-cookie#direct-download

点击下载:https://github.com//js-cookie/js-cookie/archive/master.zip

直接在jQuery.js之后引用 :

<script src="https://cdn.jsdelivr.net/npm/js-cookie@2/src/js.cookie.min.js"></script>

基本用法

创建一个在整个网站上有效的Cookie:

Cookies.set('name', 'value');

创建一个从现在起7天后过期的cookie,在整个站点上有效:

Cookies.set('name', 'value', { expires: 7 });

创建一个过期的cookie,对当前页面的路径有效:

Cookies.set('name', 'value', { expires: 7, path: '' });

读取cookie:

Cookies.get('name'); // => 'value'
Cookies.get('nothing'); // => undefined

阅读所有可见的Cookie:

Cookies.get(); // => { name: 'value' }

删除cookie:

Cookies.remove('name');

删除对当前页面路径有效的cookie:

Cookies.set('name', 'value', { path: '' });
Cookies.remove('name'); // 失败!
Cookies.remove('name', { path: '' }); //删除了! 

重要!删除cookie时,必须传递用于设置cookie的完全相同的路径和域属性,除非您依赖于默认属性。

注意:删除未存在的cookie不会引发任何异常,也不会返回任何值

Cookie属性

Cookie属性默认值可以通过设置Cookies.defaults对象的属性来全局设置,也可以Cookies.set(...)通过在最后一个参数中传递普通对象来为每个调用单独设置。每次调用属性会覆盖默认属性。

expires

定义何时删除cookie。值可以是Number将被解释为创建时或Date实例的天数。如果省略,cookie将成为会话cookie。

要创建在不到一天的时间内到期的cookie

默认值:用户关闭浏览器时会删除Cookie。

例子:

Cookies.set('name', 'value', { expires: 365 });
Cookies.get('name'); // => 'value'
Cookies.remove('name');

path

String表示cookie可见的路径。

默认: /

例子:

Cookies.set('name', 'value', { path: '' });
Cookies.get('name'); // => 'value'
Cookies.remove('name', { path: '' }); 

关于Internet Explorer的注意事项:

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

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

domain

String表示cookie应该可见的有效域。cookie也将对所有子域可见。

默认值: Cookie仅对创建cookie的页面的域或子域可见,Internet Explorer除外(请参见下文)。

例子:

假设正在创建的cookie site.com

Cookies.set('name', 'value', { domain: 'subdomain.site.com' });
Cookies.get('name'); // => undefined (need to read at 'subdomain.site.com')

关于Internet Explorer默认行为的注意事项:

如果我没有为cookie指定DOMAIN属性,IE会将它发送到所有嵌套的子域吗。例子上设置的cookie将发送到sub2.sub1.example.com。在这方面,Internet Explorer与其他浏览器不同。这意味着如果省略该domain属性,它将在IE中显示为子域。

secure

任一truefalse,表示如果cookie传输需要安全协议(HTTPS)。

默认值:无安全协议要求。

例子:

Cookies.set('name', 'value', { secure: true });
Cookies.get('name'); // => 'value'
Cookies.remove('name');

jQuery中cookie的简单操作的更多相关文章

  1. JavaScript jQuery 中定义数组与操作及jquery数组操作

    首先给大家介绍javascript jquery中定义数组与操作的相关知识,具体内容如下所示: 1.认识数组 数组就是某类数据的集合,数据类型可以是整型.字符串.甚至是对象Javascript不支持多 ...

  2. JavaScript jQuery 中定义数组与操作及jquery数组操作 http://www.jb51.net/article/76601.htm

    首先给大家介绍javascript jquery中定义数组与操作的相关知识,具体内容如下所示: 1.认识数组 数组就是某类数据的集合,数据类型可以是整型.字符串.甚至是对象Javascript不支持多 ...

  3. Java服务端对Cookie的简单操作

    Java服务端对Cookie的简单操作 时间 2016-04-07 10:39:44 极客头条 原文  http://www.cuiyongzhi.com/index.php/post/15.html ...

  4. js进阶 11-3 jquery中css属性如何操作

    js进阶 11-3  jquery中css属性如何操作 一.总结 一句话总结:通过css()方法 1.attr和css是有交叉的,比如width,两者中都可以设置,那么他们的区别是什么? 其实通俗一点 ...

  5. js进阶 11-1 jquery中的页面内容操作的三个方法

    jquery中的页面内容操作的三个方法 一.总结 一句话总结:记三个方法即可.text,html,val.因为这里是方法,所以设置值的是后面方法的参数. 1.jquery中的页面内容操作的三个方法? ...

  6. jquery中对 iframe的操作

    我们先看一下 JQUERY中的对像 contents() 的帮助文件 contents() 概述 查找匹配元素内部所有的子节点(包括文本节点).如果元素是一个iframe,则查找文档内容 示例 描述: ...

  7. jquery中ajax的简单使用

    一.load() 这是最简单的一个函数,传入一个url他会异步加载该url的内容,然后将内容插入每一个选中的元素中,替换掉其中已经存在的内容. 所以最简单的用法是: $("#myDiv&qu ...

  8. 关于js中select的简单操作,以及js前台计算,span简单操作

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  9. jQuery中 对标签元素操作(2)

    一.属性操作 1.获取属性和设置属性 例如下jQuery代码: var $para=$("p");           //获取<p>节点 var p_txt=$par ...

随机推荐

  1. 05、ip划分+网络配置+虚拟化基础+基本路由

    -- IP   IANA (Internet Assigned Numbers Authority) ,Internet号分配机构.负责对IP地 址分配规划以及对TCP/UDP公共服务的端口定义.国际 ...

  2. SSH端口转发之本地转发

    一.案例环境: 3台RHEL6.5 64虚拟机(分别为:HostA.HostB.HostC) IP地址: HostA:192.168.100.101 HostB:192.168.100.102 Hos ...

  3. Hello,DTOS!(上)

    主引导程序是软件还是固件?如果是软件,那么由谁开发?如何开发?主引导程序是软件.因为它不是固化于硬件当中的,并不是在出厂之前已经烧到硬件里面去了.因此它必然是软件.既然是软件,那是谁来开发它呢?就目前 ...

  4. wordcloud词云模块

    wordcloud词云模块 下载 pip install wordcloud 使用 import wordcloud##调用整个模块 form wordcloud import WordCloud## ...

  5. java 8 学习一(概述)

    学习java8的新特性之前,简单看了下从java5开始历代版本的新特性,都是别人总结的. java5.java6.java7.java8的新特性 http://blog.csdn.net/samjus ...

  6. sass、less异同

    相同点: 1.混入(Mixins):class中的class 2.参数混入:可以传递参数的class,就像函数一样 3.嵌套规则:class中嵌套class,从而减少重复的代码 4.运算:css中用上 ...

  7. (转)Qt中文手册 之 QApplication

    QApplication管理GUI程序的控制流和主要设置. QApplication包含由窗口系统和其他来源处理过和发送过的主事件循环.它也处理应用程序的初始化和收尾工作,并提供对话管理.QAppli ...

  8. 【JZOJ100208】【20190705】传说之下

    题目 三维空间上有一个点,进行了\(n\)次移动 第\(i\)次为在\([0,L_i]\)内随机一个长度\(l_i\),向\(\vec P_i\)方向移动\(l_i\) $\vec P_i $ 表示为 ...

  9. IPython 安装

    从 python 第三方库列表下载安装包 https://www.lfd.uci.edu/~gohlke/pythonlibs/ 然后使用 pip 进行安装 软件会自动安装到 python 安装路径的 ...

  10. MySQL错误ERROR 1786 (HY000)解决

    务上需要支持create table XXX as select * from XXX; 这种创建表的语法,但是MySQL5.7.x版本里面gtid是开启的,会报错 ERROR 1786 (HY000 ...