/**
* @Memo Cookies工具类
*
* @Author songyf
* @Date Aug 31,2019
*
* @Readme 对客户Cookies进行增删改查操作
*
*/
;(function(win,undefined) {
"use strict"
var _win;
var Cookies = {
/**
* 功能:获取指定名称的cookie的值
* @returns
*/
_GetCookie: function(k) {
var arr = document.cookie.match(new RegExp("(^| )"+k+"=([^;]*)(;|$)"));
if(arr != null) return unescape(arr[2]); return null;
},
/**
* 功能:设置cookies
* @param k cookie名称
* @param v cookie值
* @param t 有效时间 默认30天 单位:天
*/
_SetCookie: function(k,v,t){
if(!t) t = 30;
var exp = new Date();
exp.setTime(exp.getTime() + t*24*60*60*1000);
document.cookie = k + "="+ escape (v) + ";expires=" + exp.toGMTString();
},
/**
* 功能:删除cookies
* @param k
*/
_removeCookie: function(k){
var exp = new Date();
exp.setTime(exp.getTime() - 1);
var cval=this._GetCookie(k);
if(cval) document.cookie= k + "="+cval+";expires="+exp.toGMTString();
},
/**
* 针对miniui查询条件 设置记忆
* @param a 查询条件(html元素的id值是key)封装的json数据 {key1:value1,key2:value2,...}
*/
_Set_Mini_Memory: function(a){
if(!a) return;
for(var i in a){
this._SetCookie(this._PageName() + "_" + i,a[i]);
}
},
/**
* 针对miniui查询条件 获取记忆
* @param a 查询条件 html元素的id值 数组格式 [name1,name2,...]
*/
_Get_Mini_Memory: function(a){
if(!a || a.length <= 0) return null;
var return_obj = {};
for(var i = 0 , len = a.length ; i < len ; i++){
var k = this._PageName() + "_" + a[i];
var v = this._GetCookie(k);
if(mini && mini != 'undefined') mini.get(a[i]).setValue(v);
else $("#"+a[i]).val(v);
return_obj[a[i]] = v;
}
return return_obj;
},
/**
* 获取页面的名称 - 不带后缀名和参数
* @returns
*/
_PageName: function (){
var arrUrl=location.href.split("/");
var n = arrUrl[arrUrl.length-1];
if(n.indexOf("?") > -1){
n = n.substring(0,n.indexOf("?"));
}
return arrUrl[arrUrl.length-2] + "_" + n;
}
}
//将插件对象暴露给全局对象
_win = (function(){ return this || (0, eval)('this'); }());
!('Cookies' in _win) && (_win.Cookies = Cookies);
}());