关于jQuery的cookies插件2.2.0版设置过期时间的说明 (使用过,真的OK)

我是借鉴了那个设置cookie时间的内容,使用过,真的可以,赞一个


欢迎转载,转载请注明作者RunningOn

    jQuery应该是各位用JavaScript做web开发的常用工具了,它有些插件能非常方便地操作cookie。

    不过非常让人郁闷的是,网上几乎所有人对于这些插件所做的关于cookie过期/失效时间的说明都是含混的或不正确的。我被这玩意搞得实在不行了,去看了其中两个插件的源代码终于明白了是怎么一回事。为避免更多人中招,我就写下我RunningOn个人对这些cookie插件的理解。

    首先要说明的是cookie插件国内主要流行的有两个,一个是早在2006年的不知道是什么版本号的叫cookie的插件,另一个是cookies 2.2.0版,注意后者的名字比前者多一个s,国内主要用的是后者。前者早已停止维护(或者说代码很少不需要维护)而且其下载链接已经从官网撤除了,后者的下载链接则到处是。你下的十有八九是后者,官方下载在:http://code.google.com/p/cookies/downloads/list

    在我写这日志之前,网上的对jQuery操作cookies的插件的使用介绍几乎都是不正确的,主要是对于过期时间的设置不对(如果我错怪了谁,那我先道个歉)

    Cookies插件使用方法:

    1. 不用说,首先你得下载jQuery及Cookies插件。

    2. 在网页的<body>前加上:

<script type="text/javascript" src="http://513394217.blog.163.com/blog/jquery-1.2.6.min.js"></script>
<script type="text/javascript" src="http://513394217.blog.163.com/blog/jquery.cookies.2.2.0.min.js"></script>

    src=后面的那一长串就是下载的jQuery和Cookies插件的文件名,如果你和我不一样就改改。

 

    3. 如何添加/修改cookie并设定过期时间:

$.cookies.set('cookie_id', 'cookie_value', { hoursToLive: 100 });

    上面是添加或修改一个cookie,并将其过期/失效时间设定在100小时之后,注意大括号是必须的

    过期失效时间还有另外一个设置方式,指定一个绝对时间:

expireDate = new Date();
expireDate.setTime( expireDate.getTime() + ( 100 * 60 * 60 * 1000 ) );

$.cookies.set('cookie_id', 'cookie_value', {expiresAt:expireDate});

    expireAt参数精确到毫秒。大括号里还可以添加path, domain, secure等参数,这里不做介绍。如果hoursToLive和expiresAt都指定了,则以expiresAt为准。

 

    4. 如何获取cookie

$.cookies.get('cookie_id'); 

 

    5. 如何删除cookie

$.cookies.del('cookie_id'); 

 

    常用的就是这么多了。cookies有更高级的用法,比如能将数组一口气全写入cookie,但不在本文的介绍范围了。

    最后再提醒一下,如果你看到其它地方介绍jQuery操作cookie时用的这样语法$.cookie.set('cookie_id', 'cookie_value', 7)或者$.cookie.set('cookie_id', 'cookie_value', {expires: 7}),都是针对插件cookie而不是cookies的,更令人烦躁的是有些这样的文章后面附的下载链接却是cookies的,郁闷。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
一、文件说明 jquery-2.2.0.js 未压缩jquery-2.2.0.min.js 压缩jquery-2.2.0.min.map 针对压缩本出错时,给出相应的未压缩本的位置信息说明。 二、Source map JavaScript脚本正变得越来越复杂。大部分源码(尤其是各种函数库和框架)都要经过转换,才能投入生产环境。 常见的源码转换,主要是以下三种情况: (1)压缩,减小体积。比如jQuery 1.9的源码,压缩前是252KB,压缩后是32KB。 (2)多个文件合并,减少HTTP请求数。 (3)其他语言编译成JavaScript。最常见的例子就是CoffeeScript。 这三种情况,都使得实际运行的代码不同于开发代码,除错(debug)变得困难重重。 通常,JavaScript的解释器会告诉你,第几行第几列代码出错。但是,这对于转换后的代码毫无用处。举例来说,jQuery 1.9压缩后只有3行,每行3万个字符,所有内部变量都改了名字。你看着报错信息,感到毫无头绪,根本不知道它所对应的原始位置。 这就是Source map想要解决的问题。 Source map就是一个信息文件,里面储存着位置信息。转换后的代码的每一个位置,所对应的转换前的位置。 有了它,出错的时候,除错工具将直接显示原始代码,而不是转换后的代码。这无疑给开发者带来了很大方便。 目前,暂时只有Chrome浏览器支持这个功能。在Developer Tools的Setting设置中,确认选中"Enable source maps"。 三、如何启用Source map 只要在转换后的代码尾部,加上一行就可以了。 @ sourceMappingURL=/path/to/file.js.map map文件可以放在网络上,也可以放在本地文件系统。 四、实际开发 在页面中加载jquery-2.2.0.min.js即可。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值