-
什么是cookie
页面用来保存信息
比如:自动登录、记住用户名 -
cookie的特性
同一个网站中所有页面共享一套cookie
数量、大小有限
过期时间 -
JS中使用cookie
document.cookie -
Date函数的使用
<script>
var oDate=new Date();
oDate.setDate(oDate.getDate()+100);//计算当前日期+100天
alert(oDate.getFullYear()+'-'+(oDate.getMonth()+1)+'-'+oDate.getDate());
</script>
cookie的使用
- 设置cookie
格式:名字=值
不会覆盖
<script>
document.cookie='user=blue'; //添加
document.cookie='pass=123456';
alert(document.cookie);
</script>
过期时间:expires=时间
日期对象的使用
<script>
var oDate=new Date();
oDate.setDate(oDate.getDate()+14);//计算时间
document.cookie='user=blue;expires='+oDate;
alert(document.cookie);
</script>
- 封装
function setCookie(name, value, iDay)
{
var oDate=new Date();
oDate.setDate(oDate.getDate()+iDay);
document.cookie=name+'='+value+';expires='+oDate;
}
- 读取cookie
字符串分割
function getCookie(name)
{
var arr=document.cookie.split('; ');
for(var i=0;i<arr.length;i++)
{
var arr2=arr[i].split('=');
if(arr2[0]==name)
{
return arr2[1];
}
}
return '';
}
- 删除cookie
已经过期
function removeCookie(name)
{
setCookie(name, 1, -1);
}
<script>
function setCookie(name, value, iDay)
{
var oDate=new Date();
oDate.setDate(oDate.getDate()+iDay);
document.cookie=name+'='+value+';expires='+oDate;
}
function getCookie(name)
{
var arr=document.cookie.split('; ');
for(var i=0;i<arr.length;i++)
{
var arr2=arr[i].split('=');
if(arr2[0]==name)
{
return arr2[1];
}
}
return '';
}
function removeCookie(name)
{
setCookie(name, 1, -1);
}
setCookie('userName', 'dancingblue', 365);
setCookie('password', '123456', 14);
//alert(document.cookie);
//alert(getCookie('sex'));
removeCookie('password');
alert(document.cookie);
</script>
例子:
用cookie记录上次登录的用户名
提交时——记录用户名
window.onload——读取用户名
<script>
function setCookie(name, value, iDay)
{
var oDate=new Date();
oDate.setDate(oDate.getDate()+iDay);
document.cookie=name+'='+value+';expires='+oDate;
}
function getCookie(name)
{
var arr=document.cookie.split('; ');
for(var i=0;i<arr.length;i++)
{
var arr2=arr[i].split('=');
if(arr2[0]==name)
{
return arr2[1];
}
}
return '';
}
function removeCookie(name)
{
setCookie(name, 1, -1);
}
window.onload=function ()
{
var oForm=document.getElementById('form1');
var oUser=document.getElementsByName('user')[0];
oForm.onsubmit=function ()
{
setCookie('user', oUser.value, 14);
};
oUser.value=getCookie('user');
};
</script>
</head>
<body>
<form id="form1" action="http://www.zhinengshe.com/">
用户名:<input type="text" name="user" /><br>
密码:<input type="password" name="pass" /><br>
<input type="submit" value="登陆" />
</form>
</body>