前段时间做项目的时候要使用js操作cookie,jquery也有相应的插件,不过还是觉得纯生的js比较好,毕竟不依赖jq.

  1. //获得coolie 的值
  2. function cookie(name) {
  3. var cookieArray = document.cookie.split("; "); //得到分割的cookie名值对
  4. var cookie = new Object();
  5.  
  6. for (var i = 0; i < cookieArray.length; i++) {
  7.  
  8. var arr = cookieArray[i].split("="); //将名和值分开
  9.  
  10. //如果是指定的cookie,则返回它的值
  11. if (arr[0] == name) {
  12. return unescape(arr[1]);
  13. }
  14. }
  15.  
  16. return "";
  17. }
  18.  
  19. function delCookie(name)//删除cookie
  20. {
  21. document.cookie = name + "=;expires=" + (new Date(0)).toGMTString();
  22. }
  23.  
  24. function getCookie(objName) {//获取指定名称的cookie的值
  25.  
  26. var arrStr = document.cookie.split("; ");
  27.  
  28. for (var i = 0; i < arrStr.length; i++) {
  29.  
  30. var temp = arrStr[i].split("=");
  31.  
  32. if (temp[0] == objName) return unescape(temp[1]);
  33.  
  34. }
  35. }
  36.  
  37. function addCookie(objName, objValue, objHours) { //添加cookie
  38.  
  39. var str = objName + "=" + escape(objValue);
  40.  
  41. if (objHours > 0) { //为时不设定过期时间,浏览器关闭时cookie自动消失
  42.  
  43. var date = new Date();
  44.  
  45. var ms = objHours * 3600 * 1000;
  46.  
  47. date.setTime(date.getTime() + ms);
  48.  
  49. str += "; expires=" + date.toGMTString();
  50.  
  51. }
  52.  
  53. document.cookie = str;
  54. }
  55.  
  56. function SetCookie(name, value)//两个参数,一个是cookie的名子,一个是值
  57. {
  58. var Days = 30; //此 cookie 将被保存 30 天
  59. var exp = new Date(); //new Date("December 31, 9998");
  60. exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000);
  61.  
  62. document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString();
  63. }
  64.  
  65. function getCookie(name)//取cookies函数
  66. {
  67. var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));
  68.  
  69. if (arr != null) {
  70. return unescape(arr[2]);
  71. }
  72.  
  73. return null;
  74. }
  75.  
  76. function delCookie(name)//删除cookie
  77. {
  78. var exp = new Date();
  79. exp.setTime(exp.getTime() - 1);
  80. var cval = getCookie(name);
  81.  
  82. if (cval != null) {
  83. document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString();
  84. }
  85. }

使用纯生js操作cookie的更多相关文章

  1. JS操作cookie以及本地存储(sessionStorage 和 localStorage )

    JS操作cookie cookie的操作用两种方式 1.substring //创建cookie function setCookie(name,value,expires,path,domain,s ...

  2. jquery.cookie.js 操作cookie实现记住密码功能的实现代码

    jquery.cookie.js操作cookie实现记住密码功能,很简单很强大,喜欢的朋友可以参考下.   复制代码代码如下: //初始化页面时验证是否记住了密码 $(document).ready( ...

  3. js操作cookie,实现登录密码保存 [转]

    转自:http://blog.csdn.net/zyujie/article/details/8727828 ( 谢谢博主了) js操作cookie,实现登录密码保存.cookie的存放方式是以键值对 ...

  4. 转: js操作cookie

    cookie的几个概念 http://dearhappyfish.blog.163.com/blog/static/1901094152012422114753777/ js操作cookie 转:ht ...

  5. jquery.cookie 使用文档,$.cookie() 文档教程, js 操作 cookie 教程文档。

    jquery.cookie 使用文档,$.cookie() 文档教程, js 操作 cookie 教程文档. jquery.cookie中的操作: jquery.cookie.js是一个基于jquer ...

  6. js 操作 cookie

    js 操作 cookie 的方法如下: //设置cookie function setCookie(cname, cvalue, exdays) { var d = new Date(); d.set ...

  7. js操作cookie(转载:经测试可用)

    /***js操作cookie,star***/ function addCookie(objName,objValue,objsec){//添加cookie  var str = objName + ...

  8. 使用纯生js实现图片轮换

    效果图预览. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www. ...

  9. 分步引导中,Js操作Cookie,实现判断用户是否第一次登陆网站

    上一篇介绍了分布引导插件IntroJs的使用,本篇介绍通过Js操作cookie的方法. 分步引导的功能只适合与第一次登陆网站的新用户,不能每次登陆都提示分布引导,那么如何判断用户是否第一次登录网站呢? ...

随机推荐

  1. scrapy-redis基础和介绍

    一.scrapy-redis(0.6)依赖的环境 Scrapy >= 1.0.0                #终于过了1版本,这个太重要了,总算坑小了点,感谢那些为了解决各种scrapy与s ...

  2. 字符串 date 转标准 yyyyMMdd 格式

    学习转换成数字相加的思想 public static int ToDateInt(string dateStr)        {            if (string.IsNullOrEmpt ...

  3. 指针和const一些注意事项

    1.常量指针(底层const) 指向常量的指针,指针所指向的对象的值无法被修改,若想存放常量对象的地址,只能使用指向常量的指针. 2.指针常量(顶层const) 指针本身是常量,指针本身的值不可修改. ...

  4. 关于 lerp();

    value lerp(value s, value a, value b ); 该函数返回的值为:a + s * (b - a) ,是一个处于 [a, b] 之间的值. 当s=0, 该函数返回a :当 ...

  5. cmake 手册详解

    cmake 手册中文版,后续再相关博客的其他链接中,感谢翻译的好人! https://www.cnblogs.com/coderfenghc/archive/2012/06/16/CMake_ch_0 ...

  6. <NET CLR via c# 第4版>笔记 第18章 定制特性

    18.1 使用定制特性 FCL 中的几个常用定制特性. DllImport 特性应用于方法,告诉 CLR 该方法的实现位于指定 DLL 的非托管代码中. Serializable 特性应用于类型,告诉 ...

  7. 0122有关List、Set、Map的练习

    import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; public class SZYL { ...

  8. mysql-5.6.17-win32安装

    下载免安装压缩文件http://dev.mysql.com/downloads/mysql/ 解压到自定义目录,我这里演示的是D:\wamp\mysql\   复制根目录下的my-default.in ...

  9. Swift中获取系统语言

    //en-US zh-HK zh-TW zh-Hans-US var lng:String { let userDefault = NSUserDefaults.standardUserDefault ...

  10. IntelliJ IDEA 2017.01配置jdk和tomcat

    之前开发Web项目都是用myeclipse或者eclipse,最近想用IDEA这个编辑器去配置一个Web项目,因为是新手,加上对界面的操作不熟练,所以在配置的过程中遇到了一些难题.最后配置成功,并且可 ...