在javascript中想要刪除cookie,首先需要找到cookie對應的name對應的值,將其設為過期;然後設定expire屬性的值為過期日期(即任何過去日期)即可,瀏覽器會自動刪除cookie檔。
本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
原來一直以為只要設定javascript的document.cookie物件就能簡單的在瀏覽器端設定和刪除cookie值,網路上很多文章也是這麼教的,但最近發現簡單的設定javascript的document.cookie的值無法完全做到刪除或更改cookie。
使用JavaScript清理Cookie首先要找到該Cookie對應的Name對應的值,然後設定其為過期:
找到Cookie有下面方法:
function getCookie2(name){ var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)")); if(arr != null) return unescape(arr[2]); return null; }
找到後設定為過期,切記設定domain和path,只有這兩個參數跟你要刪除的參數完全一樣才能把它刪除掉。
function resetNfluent(){ alert("before=>"+document.cookie); var exp = new Date(); exp.setTime(exp.getTime() - 1); var cval=getCookie2('name'); var lanObj=document.getElementById('lanOption'); var lanSel=lanObj.value; alert(lanSel); if(lanSel=='en'){ alert('let\'s reset nFluent'); alert('cval=>'+cval); if(cval!=null){ document.cookie="name="+cval+"; domain=.example.com; expires="+exp.toGMTString()+"; path=/"; }else{ document.cookie="name=; domain=.example.com; expires="+exp.toGMTString()+"; path=/"; } }else{ alert('Don\'t need reset nFluent'); } alert("after=>"+document.cookie); }
推薦學習:javascript影片教學
以上是javascript如何刪除Cookie的詳細內容。更多資訊請關注PHP中文網其他相關文章!