今天想到了要为本身的影像日记增长赞的功能,而且须要用到cookie。javascript
记得原生的js操做cookie也不是很麻烦的,但彷佛jquery更简单,不过相比原生js,须要额外引入2个文件,彷佛又不是很好,但既然你的项目是基于jquery的,那用jquery.cookie仍是不错的。php
jquery.cookie的项目地址:jquery-cookiecss
readme.md中也介绍了用法。简单介绍一下后,下面咱们结合实例来用:html
增:$.cookie(‘isZan’, ‘1’, { expires: 1, path:’/’});java
数字1表示设置有效期为1天,path:’/’表示当前域名的根目录,例如www.baidu.com,这样设置之后cookie值就能够通用。jquery
删:\$.cookie(‘isZan’, null);或者 \$.removeCookie(‘isZan’);git
其它相关参数:github
secure: true数据库
默认值:false。若是为true,cookie的传输须要使用安全协议(HTTPS)。缓存
raw: true
默认值:false。
默认状况下,读取和写入 cookie 的时候自动进行编码和解码(使用encodeURIComponent 编码,
decodeURIComponent 解码)。要关闭这个功能设置 raw: true 便可。
详细请参考官方,还有这篇:jquery.cookie 使用方法
【实例】我想点击设置cookie,点击删除则删除该cookie。页面图:
那么咱们的html代码是:
<body> <a href="#" class="zan">点赞</a> <a href="#" class="del">删除cookie</a> <script src="http://cdn.bootcss.com/jquery/2.1.4/jquery.min.js"></script> <script src="jquery.cookie.js"></script> </body>
js代码
$(function(){ $('.zan').click(function(){ //先判断cookie是否等于咱们设置的 // 若是不等于,就发送加1的请求 if($.cookie('isZan') == undefined){ $.post('add.php',{id:"1"}, function(data){ if(data == "ok"){ //若是数据库写入加1成功则,添加cookie缓存 $.cookie('isZan', '1', { expires: 1 }); } }); } // 若是存在则不加1,弹出提示 else{ alert("今天已经赞过一次了,感谢你!"); } }); //删除cookie $('.del').click(function(){ if($.cookie('isZan') != undefined){ // $.cookie('isZan', null); $.removeCookie('isZan'); alert("你的cookie值已成功删除!"); } }); });
当点击之后,查看cookie
点击删除,
但若是你是用的
$.cookie('isZan', null);
那么它的值被设置为了null