zoukankan      html  css  js  c++  java
  • Javascript Cookie实践

    这次给出的是比较合理的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); 
            //如果有设置时间,则在规定时间内使用cookie,否则就是永不过期
            document.cookie=k+"="+v+"; expires="+ (e != '' ? date.toGMTString(): "GMT_String")+";path=/;domain="+ (d||'');
        },
        del: function (k) {
            var date=new Date(); 
            //将date设置为过去的时间
            date.setTime(date.getTime()-10000); 
            document.cookie=k+"=; expires="+date.toGMTString(); 
        }
    };

    例子演示的是:点击文字展开内容,再次点击隐藏。当内容为隐藏时,下次打开还是隐藏的,当内容为显示时,下次打开还是显示。

    <div class="tab">
    	<h3 class="tab-header">收缩</h3>
    	<div class="tab-con" id="tabCon">
    		<p>展开之后可见这里的内容</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 = '展开';
    }
    var flag = Cookie.get('flag');
    if(flag == 'hide'){
    	hide();
    }
  • 相关阅读:
    java常见面试题汇总(一)
    我的自学之路:java学习路线图分享
    bzoj3714 [PA2014]Kuglarz
    cf478D Red-Green Towers
    cf478C Table Decorations
    cf478B Random Teams
    cf479A Expression
    cf479C Exams
    cf479D Long Jumps
    cf479E Riding in a Lift
  • 原文地址:https://www.cnblogs.com/hnwty/p/4538019.html
Copyright © 2011-2022 走看看