JavaScript cookie()的使用

JavaScript cookie

/*設置cookie*/
function setCookie(c_name,c_value,expires){
    var date = new Date();
    date.setTime(date.getTime()+(expires*60*1000));
    document.cookie = c_name + "=" + c_value + ";expires=" + date.toGMTString();
}
//上面這個函數中的參數存有 cookie 的名稱、值以及過期天數。首先將天數轉換爲有效的日期,然後,將 cookie 名稱、值及其過期日期存入 document.cookie 對象
function getCookie(c_name){
    var name = c_name +"=";
    var Cookie = document.cookie.split(';');
    for(var i=0; i<Cookie.length; i++){
        var c = Cookie[i].trim(); //.trim() 函數用於去除字符串兩端的空白字符。
        var c = Cookie[i].replace(/(^\s*)|(\s*$)/g, "")//去除字符串兩端的空白字符。
        if (c.indexOf(name)==0) return c.substring(name.length,c.length);
    }
     return "";
}
//存cookie
//setCookie(cookie名,cookie值,過期時間)
setCookie("userman","123",5) //此處爲5分鐘(date.getTime()+(expires*60*1000))

//獲取cookie 
var userman = getCookie("userman");
$(class).val(userman)

cookie 的名或值中不能使用分號(;)、逗號(,)、等號(=)、空格,以及中文(會出現錯誤或亂碼問題)。 如果必須使用上述的特殊字符,則需要用escape()函數進行編碼(以16進制數的形式轉碼)存儲;如果想要讀取含特殊字符和中文的cookie值,在取出值後需要使用unescape()進行解碼才能得到原來的cookie值 ;

cookie()的使用

首先包含jQuery的庫文件,在後麪包含 jquery.cookie.js 的庫文件。

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

jquery.cookie.js的使用

 var time = "username"   //cookie的名稱
 var date = new Date();  //獲取當前時間
 date.setTime(date.getTime() + 300000); //系統當前時間+5分鐘    
$("cookie").val($.fn.cookie(time));//將name = username的cookie值賦給id=cookie的標籤
var detailTime = $("input").text();//獲取input的值
var admin = $("#takerTime").val(detailTime) //獲取到的之賦給id=takerTime的input
$.cookie(time,admin,{path:"/", expires:date})

zepto.cookie.js的使用

 var time = "username"   //cookie的名稱
 var date = new Date();  //獲取系統時間
 date.setTime(date.getTime() + 300000); //系統當前時間+5分鐘    
$("cookie").val($.fn.cookie(time));//將name = username的cookie值賦給id=cookie的標籤
var detailTime = $("input").text();//獲取input的值
var admin = $("#takerTime").val(detailTime) //獲取到的之賦給id=takerTime的input
$.fn.cookie(time,admin,{path:"/",expires:date})

參數說明

  1. 語法:$.cookie(cookie名,cookie值 , {路徑,cookie有效時間 })
  2. $.cookie(time); 讀取保存在cookie中名爲的time的值。
  3. $.cookie(time,admin); 將值admin寫入cookie名爲time的cookie中。
  4. {path:”/”,expires:date} date=〉cookie保存的時間;date時間爲5分鐘; 設置小時用setHours()和getHours方法 :date.setHours(date.getHours() + 1);或者用毫秒的乘法
    • path: cookie值保存的路徑,默認只有設置cookie的網頁才能讀取該cookie;path:”/”:表示根目錄。
    • expires:有限日期,值可以是一個數字(從創建cookie時算起,以天爲單位)或一個Date 對 象,如果沒有設置時間,瀏覽器關閉之後此cookie就失效了。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章