用js讀、寫(xiě)、刪除Cookie代碼續(xù)篇
上次的一篇文章:用js讀、寫(xiě)、刪除Cookie代碼分享及詳細(xì)注釋說(shuō)明,在實(shí)踐中發(fā)現(xiàn)了一些問(wèn)題:
1.cookie在本地文件上只能在火狐上調(diào)試,IE和chrome無(wú)效
2.cookie沒(méi)有設(shè)置為永不過(guò)期,只考慮了設(shè)置一個(gè)時(shí)間段就過(guò)期,顯然不太合理。
這次給出的是比較合理的cookie操作代碼:
var Cookie = {
get: function (k) {
return ((new RegExp(["(?:; )?", k, "=([^;]*);?"].join(""))).test(document.cookie) && RegExp["$1"]) || "";
},
set: function (k, v, e, d) {
var date=new Date();
var expiresDays=e;
date.setTime(date.getTime()+expiresDays*24*3600*1000);
//如果有設(shè)置時(shí)間,則在規(guī)定時(shí)間內(nèi)使用cookie,否則就是永不過(guò)期
document.cookie=k+"="+v+"; expires="+ (e != '' ? date.toGMTString(): "GMT_String")+";path=/;domain="+ (d||'');
},
del: function (k) {
var date=new Date();
//將date設(shè)置為過(guò)去的時(shí)間
date.setTime(date.getTime()-10000);
document.cookie=k+"=; expires="+date.toGMTString();
}
};
例子演示的是:點(diǎn)擊文字展開(kāi)內(nèi)容,再次點(diǎn)擊隱藏。當(dāng)內(nèi)容為隱藏時(shí),下次打開(kāi)還是隱藏的,當(dāng)內(nèi)容為顯示時(shí),下次打開(kāi)還是顯示。
<div class="tab">
<h3 class="tab-header">收縮</h3>
<div class="tab-con" id="tabCon">
<p>展開(kāi)之后可見(jiàn)這里的內(nèi)容</p>
</div>
</div>
var btn = document.getElementsByTagName('h3')[0];
btn.addEventListener('click',function(){
var isClose = this.getAttribute('data-isClose');
if(isClose == 'close'){
show();
Cookie.del('flag');
}else{
hide();
Cookie.set('flag','hide');
}
});
var tabCon = document.getElementById('tabCon');
function show(){
tabCon.style.display = 'block';
btn.setAttribute('data-isClose','open');
btn.innerHTML = '收縮';
}
function hide(){
tabCon.style.display = 'none';
btn.setAttribute('data-isClose','close');
btn.innerHTML = '展開(kāi)';
}
var flag = Cookie.get('flag');
if(flag == 'hide'){
hide();
}
- JS使用cookie實(shí)現(xiàn)DIV提示框只顯示一次的方法
- JS基于cookie實(shí)現(xiàn)來(lái)賓統(tǒng)計(jì)記錄訪客信息的方法
- JS設(shè)置cookie、讀取cookie、刪除cookie
- js讀取cookie方法總結(jié)
- JS實(shí)現(xiàn)清除指定cookies的方法
- js從Cookies里面取值的簡(jiǎn)單實(shí)現(xiàn)
- 用js讀、寫(xiě)、刪除Cookie代碼分享及詳細(xì)注釋說(shuō)明
- js中的cookie的讀寫(xiě)操作示例詳解
- jsp使用cookie存儲(chǔ)中文示例分享
- JS封裝cookie操作函數(shù)實(shí)例(設(shè)置、讀取、刪除)
相關(guān)文章
javascript常見(jiàn)數(shù)字進(jìn)制轉(zhuǎn)換實(shí)例分析
這篇文章主要介紹了javascript常見(jiàn)數(shù)字進(jìn)制轉(zhuǎn)換,結(jié)合實(shí)例形式分析了JavaScript十進(jìn)制,十六進(jìn)制及二進(jìn)制的相互轉(zhuǎn)換原理與技巧,需要的朋友可以參考下2016-04-04用js來(lái)刷新當(dāng)前頁(yè)面保留參數(shù)的具體實(shí)現(xiàn)
本文為大家詳細(xì)介紹下如何使用js來(lái)刷新當(dāng)前頁(yè)面保留參數(shù),下面有個(gè)不錯(cuò)的實(shí)現(xiàn)大家可以看看2013-12-12ES6學(xué)習(xí)筆記之map、set與數(shù)組、對(duì)象的對(duì)比
這篇文章主要給大家介紹了關(guān)于ES6學(xué)習(xí)筆記之map、set與數(shù)組、對(duì)象對(duì)比的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-03-03JS數(shù)字千分位格式化實(shí)現(xiàn)方法總結(jié)
這篇文章主要介紹了JS數(shù)字千分位格式化實(shí)現(xiàn)方法,結(jié)合實(shí)例形式總結(jié)分析了JS實(shí)現(xiàn)數(shù)字千分位格式化的常用技巧,包括字符串的分割、拼接、遍歷及正則操作等相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2016-12-12每天一篇javascript學(xué)習(xí)小結(jié)(Function對(duì)象)
這篇文章主要介紹了javascript中的Function對(duì)象知識(shí)點(diǎn),對(duì)Function對(duì)象的基本使用方法,以及各種方法進(jìn)行整理,感興趣的小伙伴們可以參考一下2015-11-11layui 數(shù)據(jù)表格復(fù)選框?qū)崿F(xiàn)單選功能的例子
今天小編就為大家分享一篇layui 數(shù)據(jù)表格復(fù)選框?qū)崿F(xiàn)單選功能的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09