编程技术 · 2022年9月1日

使用jquery方便cookie操作

在js中,没有对cookie提供很好的支持,需要手动进行cookie中内容的解析,比较不方便:
如网上一般的读写cookie如下:
var acookie = document.cookie.split("; ");
//读取cookie
function getck(sname) {//获取单个cookies
    for (var i = 0; i < acookie.length; i++) {
        var arr = acookie[i].split("=");
        if (sname == arr[0]) {
            if (arr.length > 1)
                return unescape(arr[1]);
            else
                return "";
        }
    }
    return "";

//或者这样
function readcookie(name) {
    var cookievalue = "";
    var search = name + "=";
    if (document.cookie.length > 0) {
        offset = document.cookie.indexOf(search);
        if (offset != -1) {
            offset += search.length;
            end = document.cookie.indexOf(";", offset);
            if (end == -1) end = document.cookie.length;
            cookievalue = unescape(document.cookie.substring(offset, end))
        }
    }
    return cookievalue;
}
是不是看起来比较原始,重造轮子的感觉。
其实Jquery已经提供了cookie的操作使用接口,非常方便。
首先,在使用这个功能之前,要引入一下jquery.cookie.js功能,这个可以直接引用或下载后附加在自已项目中
下载或引用地址参考:https://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;

最新电影,电视剧,尽在午夜剧场

电影电视剧午夜不寂寞