/** * @author wsf */ var jCookies = (function (){ var instance;//对象引用 var methods = { /** * 设置cookie */ setCookie : function (cName,cValue,cExpir){ if(cName){ var d = new Date(); if(cExpir) d.setTime(getNowDateTime()+getSpecificDate(cExpir)); else d = this.expirDate; this.doc.cookie = cName + "="+ escape (cValue) + ";expires=" + d.toGMTString(); } }, /** * 获得指定cookei */ getCookie : function (cName){ var arr,reg=new RegExp("(^| )"+cName+"=([^;]*)(;|$)"); if(arr=this.doc.cookie.match(reg)) return (arr[2]); else return null; }, /** * 移除cookie */ removeCookie : function (cName){ var exp = new Date(); exp.setTime(getNowDateTime() - 1);//当前日期-1 var cval=this.getCookie(cName); if(cval!=null) this.doc.cookie= cName + "="+cval+";expires="+exp.toGMTString(); }, /** * 更改cookie的失效时间 */ updateCookie : function (cName,cValue,cExpir){ this.setCookie(cName,cValue,cExpir); }, /** * 清空所有cookies */ clearCookies : function () { var keys = this.doc.cookie.match(/[^ =;]+(?=\=)/g); if (keys) { for (var i = keys.length; i--; ) this.removeCookie(keys[i]); } } }; /** * 创建cookies对象 * @param {Object} options */ function singletenCookie(options){ var options = options || {}; var expirDateTime = getNowDateTime() + (options.expirDate * 24 * 3600 * 1000 || 24 * 3600 * 1000);//cookie的默认失效时间 单位为天 var expirD = new Date(); expirD.setTime(expirDateTime); this.expirDate = expirD; this.doc = document;//文档对象,操作cookies extend(this,methods); return this; } /** * 获取当前时间,单位为毫秒 */ function getNowDateTime(){ var d = new Date(); return d.getTime(); } /** * 暂时没用默认失效时间单位为天 * 获得指定的失效时间 * s是代表秒:20s指20秒 * h是指小时,如12小时则是:12h * d是天数,30天则:30d */ function getSpecificDate(str) { var str1 = str.substring(str.length-1) * 1;//字符串转数字 var str2 = str.replace(str1,""); 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; } } /** * 类似继承方法 * @param {Object} destination * @param {Object} source */ function extend(destination, source) { for (var property in source) destination[property] = source[property]; return destination; } var _static = { name : "jCookies", getInstance : function (options){ if(!instance) instance = new singletenCookie(options); return instance; } } return _static; })(); 调用方式 alert(document.cookie); var cookies = jCookies.getInstance(); cookies.setCookie("test","123","1s"); alert(cookies.getCookie("test")); //cookies.clearCookies(); alert(document.cookie);
相关推荐
javascript 操作cookiejavascript 操作cookiejavascript 操作cookie
javascript对cookie的日常操作
一个封装好的cookie操作类,完成对Cookie 的增删改查等操作。
cookie-banner, 基于JavaScript的cookie信息横幅,适用于欧盟 cookie Cookie标题 Cookie横幅是确保你遵守欧盟Cookie规则的一种非常简单的方法。 只要从你的页面引用 cookiebanner.min.js 脚本就完成了。Cookie ...
这个文件包含了javascript对浏览器cookie文件的设置、读、写、删除四个函数,非常好用。
javascript对话框组件javascript对话框组件javascript对话框组件javascript对话框组件javascript对话框组件javascript对话框组件javascript对话框组件javascript对话框组件javascript对话框组件javascript对话框组件...
Web客户端统一验证JavaScript函数库组件概述Web客户端统一验证JavaScript函数库组件概述Web客户端统一验证JavaScript函数库组件概述Web客户端统一验证JavaScript函数库组件概述
实现js和C#协同操作cookie的功能。
Cookies.js - JavaScript 客户端的Cookie操作库
javascript实现操作cookie实现的可记忆菜单
通过函数获取JavaScript cookie
【JavaScript】vue动态加载JavaScript 高级JavaScript组件 【实例简介】vue动态加载JavaScript 【JavaScript】vue动态加载JavaScript 高级JavaScript组件
JavaScript函数库组件(ChkInputs)概述(含源码)
javascript操作cookie_获取与修改代码,跟以前的方法有所进步,者使用类的方法。
让人头晕眼花的功能,让人不得不佩服叫语句。 大家都来看看吧。
NULL 博文链接:https://conkeyn.iteye.com/blog/423550
主要详细向大家介绍了javascript操作Cookie的方法,包括设置、读取、删除操作,十分的细致全面,附上示例,是篇非常不错的文章,这里推荐给大家。
一个挺好用的javascript日历组件
该代码主要实现了菜单tab的切换选择,当鼠标移到菜单上时,显示对应的内容
javascript针对cookie的基本操作实例详解.docx