CookieManage.js 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. //设置cookie值
  2. function setCookie(NameOfCookie, value, expiredays, sPath) {
  3. //@参数:三个变量用来设置新的cookie:
  4. //cookie的名称,存储的Cookie值,
  5. // 以及Cookie过期的时间.
  6. // 这几行是把天数转换为合法的日期
  7. var ExpireDate = new Date();
  8. ExpireDate.setTime(ExpireDate.getTime() + (expiredays * 24 * 3600 * 1000));
  9. // 下面这行是用来存储cookie的,只需简单的为”document.cookie”赋值即可.
  10. // 注意日期通过toGMTstring()函数被转换成了GMT时间。
  11. document.cookie = NameOfCookie + "=" + escape(value) + ((expiredays == null) ? "" : ";expires=" + ExpireDate.toGMTString()) + (sPath ? "; path=" + sPath : "; path=/");
  12. }
  13. ///获取cookie值
  14. function getCookie(NameOfCookie) {
  15. // 首先我们检查下cookie是否存在.
  16. // 如果不存在则document.cookie的长度为0
  17. if (document.cookie.length > 0) {
  18. // 接着我们检查下cookie的名字是否存在于document.cookie
  19. // 因为不止一个cookie值存储,所以即使document.cookie的长度不为0也不能保证我们想要的名字的cookie存在
  20. //所以我们需要这一步看看是否有我们想要的cookie
  21. //如果begin的变量值得到的是-1那么说明不存在
  22. begin = document.cookie.indexOf(NameOfCookie + "=");
  23. if (begin != -1) {
  24. // 说明存在我们的cookie.
  25. begin += NameOfCookie.length + 1; //cookie值的初始位置
  26. end = document.cookie.indexOf(";", begin); //结束位置
  27. if (end == -1) end = document.cookie.length; //没有;则end为字符串结束位置
  28. return unescape(document.cookie.substring(begin, end));
  29. }
  30. }
  31. return null;
  32. // cookie不存在返回null
  33. }
  34. ///删除cookie
  35. function delCookie(NameOfCookie, sPath) {
  36. // 该函数检查下cookie是否设置,如果设置了则将过期时间调到过去的时间;
  37. //剩下就交给操作系统适当时间清理cookie啦
  38. if (getCookie(NameOfCookie)) {
  39. document.cookie = NameOfCookie + "=" + "; expires=Thu, 01-Jan-70 00:00:01 GMT" + (sPath ? "; path=" + sPath : "; path=/");
  40. }
  41. }