js利用cookie实现记住用户页面操作
前言
开发过程中,有时候会遇到一些类似需求,比如记住用户在浏览器层面所做的操作。之前做过一个功能,当时使用了一个拖拽插件展示一个类似九宫格的报表图,每个图形都可以显示和隐藏,如果用户点击了显示或隐藏按钮,那么下次进入系统时浏览器保留上一次的操作结果。核心部分是使用js对cookie进行操作,具体业务部分则是触发点击图形事件时,如果是隐藏,则将该图形对应的div从cookie中删除,点击显示时,将图形div写入cookie。本文只记录cookie部分操作,具体业务代码大家可以根据自己的实际情况去写。
什么时cookie?
- cookie有4kb大小,超出长度会返回空字符串;
- cookie存放在客户端,可以方便的修改查看,所以不能用cookie存放重要信息;
- cooki生命周期会在关闭浏览器以后结束,如果要在一段事件内使用,我们可以为cookie设置有效时间;
Cookie,有时也用其复数形式 Cookies,指某些网站为了辨别用户身份、进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密)。定义于 RFC2109 和 2965 中的都已废弃,最新取代的规范是 RFC6265 [1] 。(可以叫做浏览器缓存)
——引用自百度百科
方法如下
1.设置cookie 参数: cname:cookie 名称,cvalue:cookie 值 ,exdays:cookie 的过期时间
function setCookie(cname,cvalue,exdays)
{
var d = new Date();
d.setTime(d.getTime()+(exdays*24*60*60*1000));
var expires = "expires="+d.toGMTString();
document.cookie = cname + "=" + cvalue + "; " + expires;
}
2.获取cookie
function getCookie(cname)
{
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++)
{
var c = ca[i].trim();
if (c.indexOf(name)==0) return c.substring(name.length,c.length);
}
return "";
}
3.删除cookie
function delCookie(cname)
{
var exp = new Date();
exp.setTime(exp.getTime()-1);
var cval = getCookie(cname);
if(cval != null){
document.cookie = cname + "=" + cval + ";expires=" + exp.toGMTString();
}
}
希望这篇文章对你有所帮助,如果有用的话,记得关注我吆,后期持续为大家输出更多内容
参考:cookie操作
总结
到此这篇关于js利用cookie实现记住用户页面操作的文章就介绍到这了,更多相关js cookie记住用户内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341