Jquery操作cookie记住用户名


Posted in Javascript onMarch 29, 2016

一、jquery.cookie.js介绍

jquery.cookie.js是一个基于jquery的插件,一个轻量级的cookie 插件,可以读取、写入、删除 cookie。

jquery.cookie.js可以从Github上面获得源码 https://github.com/carhartl/jquery-cookie

二、jquery.cookie.js的基本用法介绍

jQuery操作cookie的插件,大概的使用方法如下:

1. 读取Cookie值

$.cookie('the_cookie'); //如果存在则返回cookieValue,否则返回null。

2. 设置cookie的值

(1) 默认设置。当没有指明cookie时间时,所创建的cookie有效期默认到用户浏览器关闭止,故被称为会话cookie。

$.cookie('the_cookie', ‘the_value');

(2) 设置有时间的cookie。 当指明时间时,故称为持久cookie,并且有效时间为天。

$.cookie(‘cookieName','cookieValue', {expires:7});

(3) 设置有路径的cookie 。如果不设置有效路径,在默认情况下,只能在cookie设置当前页面读取该cookie,cookie的路径用于设置能够读取cookie的顶级目录。

$.cookie(‘cookieName','cookieValue', {expires:7, path:'/'});

(4)设置特定网站的cookie 。

$.cookie(‘cookieName','cookieValue',{expires:7, path:'/' , domain: ‘souvc.com' , secure: false , raw:false});

参数解释:

1).expires: 365

定义cookie的有效时间,值可以是一个数字(从创建cookie时算起,以天为单位)或一个Date 对象。如果省略,那么创建的cookie是会话cookie,将在用户退出浏览器时被删除。

//注:在默认情况下,只有设置 cookie的网页才能读取该 cookie。如果想让一个页面读取另一个页面设置的cookie,必须设置cookie的路径。cookie的路径用于设置能够读取 cookie的顶级目录。将这个路径设置为网站的根目录,可以让所有网页都能互相读取 cookie (一般不要这样设置,防止出现冲突) 。

expires: (Number | Date) 有效期,可以设置一个整数作为有效期(单位:天),也可以设置一个日期对象作为Cookie的过期日期。如果指定日期为负数,那么此cookie将被删除;如果不设置或者设置为null,那么此cookie将被当作Session Cookie处理,并且在浏览器关闭后删除。

var COOKIE_NAME = 'username';
if( $.cookie(COOKIE_NAME) ){
$("#username").val( $.cookie(COOKIE_NAME) );
}
$("#check").click(function(){
if(this.checked){
$.cookie(COOKIE_NAME, $("#username").val() , { path: '/', expires: 10 });
//var date = new Date();
//date.setTime(date.getTime() + (3 * 24 * 60 * 60 * 1000)); //三天后的这个时候过期
//$.cookie(COOKIE_NAME, $("#username").val(), { path: '/', expires: date });
}else{
$.cookie(COOKIE_NAME, null, { path: '/' }); //删除cookie
}
});

2).path: '/'

默认情况:只有设置cookie的网页才能读取该cookie。 定义cookie的有效路径。默认情况下, 该参数的值为创建 cookie 的网页所在路径(标准浏览器的行为) 。 如果你想在整个网站中访问这个cookie需要这样设置有效路径:path: '/'。

如果你想删除一个定义了有效路径的 cookie,你需要在调用函数时包含这个路径:$.cookie('the_cookie', null, { path: '/' });。 domain: 'example.com' 默认值:创建 cookie的网页所拥有的域名。

3). domain:创建cookie所在网页所拥有的域名;

4). secure:默认是false,如果为true,cookie的传输协议需为https;raw:默认为false,读取和写入时候自动进行编码和解码(使用encodeURIComponent编码,使用decodeURIComponent解码),关闭这个功能,请设置为true。

3. 删除cookie 。

$.cookie('the_cookie', null); //删除一个cookie

$.cookie(‘cookieName',null,{path:'/'}); //注:如果想删除一个带有效路径的cookie

三、使用方法

首先包含jQuery的库文件,在后面包含 jquery.cookie.js 的库文件。

<script type="text/javascript" src="js/jquery-1.6.2.min.js"></script> 
<script type="text/javascript" src="js/jquery.cookie.js"></script>

四、简要说明。

1. 页面效果

Jquery操作cookie记住用户名

2. jsp页面:

<input type="text" class="lr-input" placeholder="手机号码/用户名" style="width:255px" id="username" name="username" value=""/> <input type="password" class="lr-input" placeholder="请输入登录密码" style="width:255px" id="password" name="password" /> 
<div class="lr-formWrap fn-clear">
<p class="lr-remUser fn-left" id="remUserSelect"><i class="icon-check"></i>记住用户</p>
<a href="javascript:void(0)" id="login-submit" class="lr-submit">登录</a>

3. css样式:

.lr-remUser {
color: #9d9d9d;
cursor: pointer;
font-size: 14px;
line-height: 25px;
padding-left: 30px;
}

4. js实现

//按照状态读取是否显示昵称
if ($.cookie("rmbUser") == "true") {
$("#remUserSelect").addClass("active");//如果是选中,那么给上选中的标志
$("#username").val($.cookie("nickName"));//记录账号
} 
//验证记住帐号
function vailRememberNickName(){
if($("#remUserSelect").hasClass("active")){
var nickName = $("#username").val();
$.cookie("rmbUser", "true", { expires: 7 }); // 存储一个带7天期限的 cookie
$.cookie("nickName", nickName, { expires: 7 }); // 存储一个带7天期限的 cookie
}else {
$.cookie("rmbUser", "false", { expires: -1 });
$.cookie("nickName", '', { expires: -1 });
}
}

5. 然后在点击登录的时候进行调用这个方法。

//登录提交表单
$("#login-submit").on("click",function(){
var form = $("#loginForm");
if(!vailPhone())return;
if(!vailPwd())return;
vailRememberNickName();
form.submit();
});

6. 登录查看浏览器控制台效果如下:

Jquery操作cookie记住用户名

7. 退出登录的时候可以看到登录框的效果:

Jquery操作cookie记住用户名

以上内容是小编给大家介绍的Jquery操作cookie记住用户名的相关说明,希望对大家有所帮助!

Javascript 相关文章推荐
JQuery的一些小应用收集
Mar 27 Javascript
扩展IE中一些不兼容的方法如contains、startWith等等
Jan 09 Javascript
推荐10个2014年最佳的jQuery视频插件
Nov 12 Javascript
简介JavaScript中的setHours()方法的使用
Jun 11 Javascript
Node.js编程中客户端Session的使用详解
Jun 23 Javascript
jquery ztree异步搜索(搜叶子)实践
Feb 25 Javascript
jQuery和JavaScript节点插入元素的方法对比
Nov 18 Javascript
详解vue-meta如何让你更优雅的管理头部标签
Jan 18 Javascript
vue.js获得当前元素的文字信息方法
Mar 09 Javascript
Vue中UI组件库之Vuex与虚拟服务器初识
May 07 Javascript
json数据格式常见操作示例
Jun 13 Javascript
解决vue初始化项目时,一直卡在Project description上的问题
Oct 31 Javascript
jQuery简单实现提交数据出现loading进度条的方法
Mar 29 #Javascript
Javascript设计模式之观察者模式(推荐)
Mar 29 #Javascript
AngularJS directive返回对象属性详解
Mar 28 #Javascript
Boostrap模态窗口的学习小结
Mar 28 #Javascript
理解javascript模块化
Mar 28 #Javascript
谈一谈jQuery核心架构设计
Mar 28 #Javascript
javascript函数自动执行常用方法汇总
Mar 28 #Javascript
You might like
PHP Socket 编程
2010/04/09 PHP
php入门学习知识点四 PHP正则表达式基本应用
2011/07/14 PHP
修改ThinkPHP缓存为Memcache的方法
2014/06/25 PHP
thinkPHP统计排行与分页显示功能示例
2016/12/02 PHP
PHP ADODB生成下拉列表框功能示例
2018/05/29 PHP
JavaScript表达式:URL 协议介绍
2013/03/10 Javascript
基于MVC3方式实现下拉列表联动(JQuery)
2013/09/02 Javascript
jquery 淡入淡出效果的简单实现
2014/02/07 Javascript
Backbone.js 0.9.2 源码注释中文翻译版
2015/06/25 Javascript
javascript基础语法——全面理解变量和标识符
2016/06/02 Javascript
vue checkbox 全选 数据的绑定及获取和计算方法
2018/02/09 Javascript
详解Angular如何正确的操作DOM
2018/07/06 Javascript
AngularJS自定义表单验证功能实例详解
2018/08/24 Javascript
elementUI Vue 单个按钮显示和隐藏的变换功能(两种方法)
2018/09/04 Javascript
微信小程序学习笔记之函数定义、页面渲染图文详解
2019/03/28 Javascript
理理Vue细节(推荐)
2019/04/16 Javascript
原生js实现二级联动菜单
2019/11/27 Javascript
JS实现进度条动态加载特效
2020/03/25 Javascript
Javascript柯里化实现原理及作用解析
2020/10/22 Javascript
Python内置函数之filter map reduce介绍
2014/11/30 Python
Python调用C语言开发的共享库方法实例
2015/03/18 Python
pygame学习笔记(3):运动速率、时间、事件、文字
2015/04/15 Python
Python的Flask框架中使用Flask-SQLAlchemy管理数据库的教程
2016/06/14 Python
python 字符串只保留汉字的方法
2018/11/16 Python
python爬虫超时的处理的实例
2018/12/19 Python
对Python使用mfcc的两种方式详解
2019/01/09 Python
Python *args和**kwargs用法实例解析
2020/03/02 Python
python入门教程之基本算术运算符
2020/11/13 Python
Trip.com香港网站:Ctrip携程旗下,全球最大的网上旅游社之一
2016/08/01 全球购物
软件测试面试题
2014/01/05 面试题
《生命的药方》教学反思
2014/04/08 职场文书
温馨提示标语
2014/06/26 职场文书
2015圣诞节贺卡寄语
2015/03/24 职场文书
淘宝客服专员岗位职责
2015/04/07 职场文书
2015年信贷员工作总结
2015/04/28 职场文书
MySQL索引失效十种场景与优化方案
2023/05/08 MySQL