服务器之家:专注于服务器技术及软件下载分享
分类导航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服务器之家 - 编程语言 - JavaScript - js教程 - js利用cookie实现记住用户页面操作

js利用cookie实现记住用户页面操作

2022-02-17 19:36一起随缘 js教程

这篇文章主要给大家介绍了关于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 的过期时间

?
1
2
3
4
5
6
7
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

?
1
2
3
4
5
6
7
8
9
10
11
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

?
1
2
3
4
5
6
7
8
9
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记住用户内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/qq_34279303/article/details/114746509

延伸 · 阅读

精彩推荐
  • js教程three.js中多线程的使用及性能测试详解

    three.js中多线程的使用及性能测试详解

    这篇文章主要给大家介绍了关于three.js中多线程的使用及性能测试的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考...

    郭先生的博客4692021-12-28
  • js教程js实现有趣的倒计时效果

    js实现有趣的倒计时效果

    这篇文章主要为大家详细介绍了js实现有趣的倒计时效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    搬砖大法4522022-01-04
  • js教程微信小程序实现购物车小功能

    微信小程序实现购物车小功能

    这篇文章主要为大家详细介绍了微信小程序实现购物车小功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    小王同学Max5512021-12-22
  • js教程JavaScript中的for循环与双重for循环详解

    JavaScript中的for循环与双重for循环详解

    这篇文章主要给大家介绍了关于JavaScript中for循环与双重for循环的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习...

    Lumoom8892022-02-17
  • js教程js中延迟加载和预加载的具体使用

    js中延迟加载和预加载的具体使用

    这篇文章主要介绍了js中延迟加载和预加载的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友...

    Yushia5902021-12-31
  • js教程js实现星星闪特效

    js实现星星闪特效

    这篇文章主要为大家详细介绍了js实现星星闪特效,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    过客尘烟11392022-02-12
  • js教程JavaScript canvas实现文字时钟

    JavaScript canvas实现文字时钟

    这篇文章主要为大家详细介绍了JavaScript canvas实现文字时钟,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    _Adoph6192021-12-29
  • js教程一个参数验证,学会 Nest.js 的两大机制:Pipe、ExceptionFilter

    一个参数验证,学会 Nest.js 的两大机制:Pipe、ExceptionFilter

    前端做表单的验证基本不用自己写,有很多 validation 的库,大家写的也比较多了。后端的验证大家可能写的相对较少,今天我们就来学下后端框架 Nest.js 如...

    神光的编程秘籍10932021-12-28