[精讚] [會員登入]
10134

Javascript/Jquery 建立、讀取、刪除cookie值

Javascript/Jquery 建立、讀取、刪除cookie值

分享此文連結 //n.sfs.tw/10319

分享連結 Javascript/Jquery 建立、讀取、刪除cookie值@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-25 12:48:47 最後編修
2016-11-28 12:30:20 By 張○○
 

自動目錄

[JQuery]

原本HTML要建立C、讀取R、刪除D、cookie我都使用別人寫的jquery 插件COOKIE plugin[1],使用上就簡化很多:

建立

$.cookie("example", "foo"); // Sample 1
$.cookie("example", "foo", { expires: 7 }); // Sample 2
$.cookie("example", "foo", { path: '/admin', expires: 7 }); // Sample 3

取得/刪除

alert( $.cookie("example") );
$.removeCookie("example");

缺點是這得架構在jquery,而且得引入一個插件,對於有時不想用jq的我造成困擾,的確jq是很方便啦,但是jq會一直升級有時只想單純的建立讀取,不想那一大包jq,所以使用javascript 的方法來解決。

[JavaScript]

// 建立cookie
function createCookie(name, value, days, path) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
    var expires = "; expires=" + date.toGMTString();
  }
  else var expires = "";
  document.cookie = name + "=" + value + expires + "; path=/";
}
//讀取
function readCookie(name) {
   var nameEQ = name + "=";
   var ca = document.cookie.split(';');
   for (var i = 0; i < ca.length; i++) {
      var c = ca[i];
      while (c.charAt(0) == ' ') c = c.substring(1, c.length);
      if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
   }
   return null;
}
//刪除
function eraseCookie(name) {
   createCookie(name, "", -1);
}

使用範例:
讀取
   ds= readCookie('showadv');

建立(有效3日)
  var ds="some value";
  createCookie('showadv', ds, 3);

刪除(等於建立一個逾期的cookie)
  eraseCookie('showadv');

參考資料

[1] http://stackoverflow.com/questions/1599287/create-read-and-erase-cookies-with-jquery

END

你可能感興趣的文章

Jquery+CSS div區塊的拖拉(drag and drop)效果 網頁想要做到拖拉區塊的功能,但又不想使用他人的插件或是 jquery-ui的話,怎麼做?

[jQuery] 利用load()來達成ajax的寫法 jQuery中利用load()來達成ajax的寫法,也有人稱他是假的ajax,作法就是..

[Javascript] 偵錯方式 (火狐中的javascript偵錯) javascript 並不是很容易偵錯(debug)的語言,但那是以前,現在有很多瀏覽器支持很多的工具,此文以火狐為例談談偵錯...

[Bootstrap] Datepicker使用/Bootstrap日期選日期選擇器的使用 Bootstrap日期選日期選擇器的使用

[Vue3.js] vue3 運行時出現 Network: unavailable 的解決方法 vue3 運行測試平台時如果需要遠端連線的話怎麼辦?

[jQuery] select 元件的取值及給值 html中的元件select,在jquery中要如何使用?

隨機好文

[MAC] 截取螢幕畫面的方法 截取螢幕畫面的方法,在MAC中叫作螢幕快照,英文是screenshot

UTF-8 BOM (Byte Order Mark) 的問題 在 Michael Kaplan 那看到 Every character has a story #4: U+feff

魔球中小女孩唱的歌 The show 魔球中小女孩唱的歌 The show

精讚的版面變化 ▓此文僅作為舊文的記錄▓ 這篇文章為了紀念改版完成而撰寫。 原本的部落格是民國97年的作品,那時還是用舊有的技術來寫,很

外匯課程經驗 有天遇到某個朋友的正妹朋友,說她有個很棒的外匯投資課程,要我們去聽,只收場地費200大洋。她又說續效最差一個月也有1%,誰還在苦哈哈上班?