通过js对cookie的使用手册
一般大多数人还是用引用JQuary API——jquery.cookie.js,来操作cookie。这是一种很不错的方式,我也支持这样的做法。
但是有时候我们只需要一种极为轻量级的代码来实现简单的功能,不想引入Jquery,那么了解一下JS对cookie的操作也是很有必要的。
功能举例:在网站首页加入帮助引导,只需要第一次看见这个页面的用户显示,帮助引导中点击“我知道了”按钮,将永久不再显示。
(由于cookie和浏览器有关,所以在不同的浏览器中,都会显示第一次)
HTML+CSS代码:
<div id="divhelp" style="display:none">
<div class="container">
<div id="helpimg">
<div id="helpimgtext">
<div>这里可以点击下载“系统说明”获得更多系统帮助哦~</div>
<div style="text-align:right;font-size:13px; line-height:25px;"><a href="javascript:void(0)">我知道了</a></div>
</div>
</div>
</div>
</div>
#divhelp { background: rgba(0,0,0,0.5); width: 100%; height: 100%; left:; top:; position: fixed!important; z-index:; cursor:default; }/*bootstrap z-index范围[1030,1040);*/
#divhelp .container { padding-top: 25px; margin-bottom: 5px; z-index:; position: relative; height: 93px; }
#divhelp #helpimg { position: absolute; right: 110px; top: 43px; background: url(../背景透明的图片.png); width: 410px; height: 230px; }
#divhelp #helpimgtext {color:#333; margin:110px 130px 0px 55px;}
#divhelp #helpimgtext div { line-height:30px; text-indent:2em; }
#divhelp #helpimgtext a { cursor:pointer; }
JS代码:
$(function () {
//alert(document.cookie); //cookie存在则不显示
var cookName = "visited=";
if (document.cookie.indexOf(cookName) == -1) {
$("#divhelp").show();
} //点击后储存cookie
$("#helpimgtext a").on("click", function () {
$("#divhelp").hide();
var date = new Date();
date.setTime(date.getTime() + 365 * 24 * 3600 * 1000);//失效时长设为1年
document.cookie = "visited=1;path=/;expires=" + date.toGMTString();
});
});
关键代码:
document.cookie = "visited=1;path=/;expires=" + date.toGMTString();
说明:
1)document.cookie
设置当前的一条cookie。当alert此代码,将显示所有cookie项,每个cookie之间用;隔开。
2)visited=1
visited为键,1为值。格式:键=值。
3)path=/
设置共享目录,同一用户的根目录下所有的页面都读取该cookie。简单的说,该cookie在该网站所有页面共享。
4)expires=xxx.toGMTString()
设置有效期,xxx必须为日期类型,一旦设置该属性,同一浏览器在该有效期内不会失效。
使用帮助:
Q:如何设置cookie为永久有效?
A:没有永久有效,只有把有效期设置的足够大,比如1年
Q:如何删除cookie?
A:同理,把有效期设置为当前时间-1,即表示过期,过期了就立即失效,消失了。
Q:如何修改cookie?
A:同新增的代码。系统会自动检索该cookie是否存在,没有则新增,有则更新。
Q:如何读取cookie?
A:通过alert(document.cookie)你会发现cookie是一串用;分隔的字符串。只需要用;分隔再循环读取,直到找到你要的值即可。
通过js对cookie的使用手册的更多相关文章
- nw.js的cookie操作
在实战中,我遇到nw.js cookie一个奇怪的现象. 当我写入cookie(非httponly)后,关闭nw.js.然后再打开nw.js发现cookie没有写入成功.经过摸索,发现 nw.js的c ...
- js获取cookie
js获取cookie 之前用jQuery.cookie来获取cookie,虽然简单,但是项目上又多引用了一个插件,总觉得不太好,下面是我封装的js原生获取cookie的函数. function get ...
- jquery.cookie.js 操作cookie实现记住密码功能的实现代码
jquery.cookie.js操作cookie实现记住密码功能,很简单很强大,喜欢的朋友可以参考下. 复制代码代码如下: //初始化页面时验证是否记住了密码 $(document).ready( ...
- js读写Cookie问题(Cookie存储时长、Cookie存储域)汇总
在采集网站用户行为数据/使用js对用户行为做交互时,经常会使用到Cookie,了解Js Cookie的读写,以及一些细节,非常重要. 什么是Cookie 所谓Cookie,只是一条极为短小的信息, ...
- 运用JS设置cookie、读取cookie、删除cookie
JavaScript是运行在客户端的脚本,因此一般是不能够设置Session的,因为Session是运行在服务器端的.而cookie是运行在客户端的,所以可以用JS来设置cookie. 假设有这样一种 ...
- js里cookie操作
原生js操作cookie 创建和存储 cookie 在这个例子中我们要创建一个存储访问者名字的 cookie.当访问者首次访问网站时,他们会被要求填写姓名.名字会存储于 cookie 中.当访问者再次 ...
- JS设置cookie、读取cookie、删除cookie
JS设置cookie.读取cookie.删除cookie JS设置cookie,注意一定要path=/ ,根目录,不然其他目录可能查询不到..默认是本目录. document.cookie ...
- JS读写cookie以及中文乱码解决
本文地址:http://www.cnblogs.com/PiaoMiaoGongZi/p/4092489.html 转载请注明. Js获取所有的cookie信息: var cookiename = d ...
- JS设置cookie
cookie 与 session 是网页开发中常用的信息存储方式.Cookie是在客户端开辟的一块可存储用户信息的地方:Session是在服务器内存中开辟的一块存储用户信息的地方. JavaScrip ...
随机推荐
- JSP学习
http://blog.csdn.net/javaeeteacher/article/details/1932447
- 程序设计入门——C语言 第8周编程练习 1 单词长度(4分)
第8周编程练习 依照学术诚信条款,我保证此作业是本人独立完成的. 温馨提示: 1.本次作业属于Online Judge题目,提交后由系统即时判分. 2.学生可以在作业截止时间之前不限次数提交答案,系统 ...
- Js dom操作总结
1.选取文档元素 1.1. getElemenById 基于唯一id获取,任何HTML元素可以有id属性,在文档中该值必须唯一. 1.2. getElementsByName 基于name属性的值选取 ...
- apache2.4以上版本配置虚拟主机
一 将 主配置文件 httpd.conf中 #Include conf/extra/httpd-vhosts.conf 前面的# 去掉 二 进入conf/extra 修改 /conf/extra/ ...
- 数据库查询优化-SQL优化
1.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默 ...
- Sublime Text 3 快捷键汇总
Sublime Text 3非常实用,但是想要用好,一些快捷键不可或缺,所以转了这个快捷键汇总. 用惯了vim,有些快捷键也懒得用了,尤其是在win下面,还有图形界面,所以个人觉得最有用的还是搜索类, ...
- OpenGL利用模板测试实现不规则裁剪
本文是原创文章,如需转载,请注明文章出处 在游戏开发中,经常会有这样的需求:给定一张64x64的卡牌素材,要求只显示以图片中心为圆点.直径为64的圆形区域,这就要用到模板测试来进行不规则裁剪. 实现不 ...
- 创建用资源管理器打开FTP位置
FTP快捷方式默认用浏览器打开,而不是用资源管理器打开,管理文件不习惯. 解决方法1:创建桌面快捷方式 新建快捷方式,键入对象位置 %windir%\explorer.exe "ftp:// ...
- 关于css
已经学了四天的css.现在对于css的了解还很肤浅,首先,我对基础的还不是很了解. 级联样式表(Cascading Style Sheet)简称“CSS”,通常又称为“风格样式表(Style Shee ...
- <c:forEach>循环list,一个表格两列数据
参考: http://zhidao.baidu.com/link?url=apG5dUmW7RjB5eOYKSWOWdKd7nxFpkDO4n3i8R6MWYKl7E2JC1OCtPILF4G4EUO ...