/*
* *说明:不可以获取java的session
* 语法:
添加数据
$.session.set('key', 'value')
删除数据
$.session.remove('key');
获取数据
$.session.get('key');
清除数据
$.session.clear();
*/
(function($){
$.session = {
_id: null,
_cookieCache: undefined,
_init: function()
{
if (!window.name) {
window.name = Math.random();
}
this._id = window.name;
this._initCache();
// See if we've changed protcols
var matches = (new RegExp(this._generatePrefix() + "=([^;]+);")).exec(document.cookie);
if (matches && document.location.protocol !== matches[1]) {
this._clearSession();
for (var key in this._cookieCache) {
try {
window.sessionStorage.setItem(key, this._cookieCache[key]);
} catch (e) {};
}
}
document.cookie = this._generatePrefix() + "=" + document.location.protocol + ';path=/;expires=' + (new Date((new Date).getTime() + 120000)).toUTCString();
},
_generatePrefix: function()
{
return '__session:' + this._id + ':';
},
_initCache: function()
{
var cookies = document.cookie.split(';');
this._cookieCache = {};
for (var i in cookies) {
var kv = cookies[i].split('=');
if ((new RegExp(this._generatePrefix() + '.+')).test(kv[0]) && kv[1]) {
this._cookieCache[kv[0].split(':', 3)[2]] = kv[1];
}
}
},
_setFallback: function(key, value, onceOnly)
{
var cookie = this._generatePrefix() + key + "=" + value + "; path=/";
if (onceOnly) {
cookie += "; expires=" + (new Date(Date.now() + 120000)).toUTCString();
}
document.cookie = cookie;
this._cookieCache[key] = value;
return this;
},
_getFallback: function(key)
{
if (!this._cookieCache) {
this._initCache();
}
return this._cookieCache[key];
},
_clearFallback: function()
{
for (var i in this._cookieCache) {
document.cookie = this._generatePrefix() + i + '=; path=/; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
}
this._cookieCache = {};
},
_deleteFallback: function(key)
{
document.cookie = this._generatePrefix() + key + '=; path=/; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
delete this._cookieCache[key];
},
get: function(key)
{
return window.sessionStorage.getItem(key) || this._getFallback(key);
},
set: function(key, value, onceOnly)
{
try {
window.sessionStorage.setItem(key, value);
} catch (e) {}
this._setFallback(key, value, onceOnly || false);
return this;
},
'delete': function(key){
return this.remove(key);
},
remove: function(key)
{
try {
window.sessionStorage.removeItem(key);
} catch (e) {};
this._deleteFallback(key);
return this;
},
_clearSession: function()
{
try {
window.sessionStorage.clear();
} catch (e) {
for (var i in window.sessionStorage) {
window.sessionStorage.removeItem(i);
}
}
},
clear: function()
{
this._clearSession();
this._clearFallback();
return this;
}
};
$.session._init();
})(jQuery);
没有合适的资源?快使用搜索试试~ 我知道了~
前端session存储数据
共1个文件
js:1个
需积分: 50 30 下载量 109 浏览量
2017-11-10
12:07:18
上传
评论
收藏 1KB ZIP 举报
温馨提示
javascriptSession用户session共享页面数据,适合于单页面应用程序开发
资源推荐
资源详情
资源评论
收起资源包目录
jquery_session.zip (1个子文件)
jquery_session.js 4KB
共 1 条
- 1
资源评论
SU708877595
- 粉丝: 0
- 资源: 12
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功