溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

javascript 操作cookies詳解及實例

發(fā)布時間:2020-08-30 05:33:55 來源:腳本之家 閱讀:111 作者:別寒 欄目:web開發(fā)

javascript 操作cookies詳解

這段操作cookies的方法我使用很久了,但是一直一來沒遇到什么問題,今天在做一個在第一個頁面保存了cookies,第二個頁面獲取或者第三個頁面獲取的功能中,發(fā)現(xiàn)了方法的局限性,比如,第一個頁面路徑為 http://xxxxx/cyb-car2016/h6OfficeWorker/index,第二個頁面路徑為 http://xxxxx/cyb-car2016/h6AlertController/index,其中除了域名是一樣之外,還有一個命名空間不一樣,而cookies是默認保存在當前頁面下,所以在第一個頁面中保存了cookies,因為保存的路徑不同,第二個頁面會獲取不到cookies。 解決方法是,在保存cookies的時候,設(shè)置一下path,document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString()+";path=/"; ,其中path=/表示保存在域名路徑下,全局可用

/***********************操作cookies的方法***************************/
//寫cookies 
//這是有設(shè)定過期時間的使用示例: 
//s20是代表20秒 
//h是指小時,如12小時則是:h22 
//d是天數(shù),30天則:d30 
function setCookie(name,value,time){
 var strsec = getsec(time); 
 var exp = new Date(); 
 exp.setTime(exp.getTime() + strsec*1); 
 document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString()+";path=/"; 
}

//讀取cookies 
function getCookie(name){
 var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");

 if(arr=document.cookie.match(reg)) 
  return unescape(arr[2]); 
 else 
  return false; 
}

// 刪除cookies
function delCookie(name){
 var exp = new Date();
 exp.setTime(exp.getTime() - 1);
 var cval=getCookie(name);
 if(cval!=null)
 document.cookie= name + "="+cval+";expires="+exp.toGMTString()+";path=/";
}

function getsec(str){
 //alert(str); 
 var str1=str.substring(1,str.length)*1; 
 var str2=str.substring(0,1); 
 if (str2=="s")
 { 
  return str1*1000; 
 }
 else if (str2=="h")
 { 
  return str1*60*60*1000; 
 }
 else if (str2=="d")
  { 
   return str1*24*60*60*1000; 
  } 
}


//獲取Cookie
//var name = getCookie("name");
//var phone = getCookie("phone");
//
//if(phone != ""){
// $("input[name=phone]").val(phone);
//}
//if(name!="false"){
// $("input[name=name]").val(name);
//}

/***********************操作cookies的方法***************************/


感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI