JQ操作cookie

下载与引入:jquery.cookie.js基于jquery;
先引入jquery,
再引入:jquery.cookie.js;
下载:http://plugins.jquery.com/cookie/

<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.cookie.js"></script>

1.添加一个"会话cookie"
$.cookie('the_cookie', 'the_value');
这里没有指明 cookie有效时间,所创建的cookie有效期默认到用户关闭浏览器为止,所以被称为 “会话cookie(session cookie)”。


2.创建一个cookie并设置有效时间为 7天
$.cookie('the_cookie', 'the_value', { expires: 7 });
这里指明了cookie有效时间,所创建的cookie被称为“持久 cookie (persistent cookie)”。注意单位是:天;


3.创建一个cookie并设置 cookie的有效路径
$.cookie('the_cookie', 'the_value', { expires: 7, path: '/' });
在默认情况下,只有设置 cookie的网页才能读取该 cookie。如果想让一个页面读取另一个页面设置的cookie,必须设置cookie的路径。cookie的路径用于设置能

够读取 cookie的顶级目录。将这个路径设置为网站的根目录,可以让所有网页都能互相读取 cookie (一般不要这样设置,防止出现冲突)。


4.读取cookie
$.cookie('the_cookie');


5.删除cookie
$.cookie('the_cookie', null);   //通过传递null作为cookie的值即可


6.可选参数
$.cookie('the_cookie','the_value',{
    expires:7,  
    path:'/',
    domain:'jquery.com',
    secure:true
})
expires:(Number|Date)有效期;设置一个整数时,单位是天;也可以设置一个日期对象作为Cookie的过期日期;
path:(String)创建该Cookie的页面路径;
domain:(String)创建该Cookie的页面域名;
secure:(Booblean)如果设为true,那么此Cookie的传输会要求一个安全协议,例如:HTTPS;


关于获取cookies乱码问题:
如果cookie是在后台代码存的,可以用HttpUtility.UrlEncode这个来编码,
如果cookie是在js端存的,可以用encodeURIComponent 这个函数来编码一下
存取完后在通过js端的decodeURIComponent来解码,这样就不会乱码了。

存:
var city_name = encodeURI(encodeURI('郑州市'));
$.cookie("area", city_name);


取:
var city = decodeURI(decodeURI($.cookie("area")))
$('.common-city').html(city) //页面展示当前定位城市名
发布了76 篇原创文章 · 获赞 144 · 访问量 3044

猜你喜欢

转载自blog.csdn.net/qq_40745143/article/details/103854110