关于cookie的初识和运用(js和jq)


Posted in Javascript onApril 07, 2016

cookie是什么

---------------------------------------------------

cookie是浏览器提供的一种机制,它将document 对象的cookie属性提供给JavaScript。可以由JavaScript对其进行控制,而并不是JavaScript本身的性质。cookie是存于用户硬盘的一个文件,这个文件通常对应于一个域名,当浏览器再次访问这个域名时,便使这个cookie可用。因此,cookie可以跨越一个域名下的多个网页,但不能跨越多个域名使用。

cookie使用场合

---------------------------------------------------

(1)保存用户登录状态。例如将用户id存储于一个cookie内,这样当用户下次访问该页面时就不需要重新登录了,现在很多论坛和社区都提供这样的功能。 cookie还可以设置过期时间,当超过时间期限后,cookie就会自动消失。因此,系统往往可以提示用户保持登录状态的时间:常见选项有一个月、三个 月、一年等。

(2)跟踪用户行为。例如一个天气预报网站,能够根据用户选择的地区显示当地的天气情况。如果每次都需要选择所在地是烦琐的,当利用了 cookie后就会显得很人性化了,系统能够记住上一次访问的地区,当下次再打开该页面时,它就会自动显示上次用户所在地区的天气情况。因为一切都是在后 台完成,所以这样的页面就像为某个用户所定制的一样,使用起来非常方便。

(3)定制页面。如果网站提供了换肤或更换布局的功能,那么可以使用cookie来记录用户的选项,例如:背景色、分辨率等。当用户下次访问时,仍然可以保存上一次访问的界面风格。
 
cookie的用法

---------------------------------------------------

js方式:

function setCookie(sName, sValue, oExpires, sPath, sDomain, bSecure) { //js设置cookie 
        var sCookie = sName + '=' + encodeURIComponent(sValue); 
         if (oExpires) { 
           var date = new Date(); 
           date.setTime(date.getTime() + oExpires * 60 * 60 * 1000); 
           sCookie += '; expires=' + date.toUTCString(); 
        } 
        if (sPath) { 
           sCookie += '; path=' + sPath; 
        if (sDomain) { 
           sCookie += '; domain=' + sDomain; 
        } 
         if (bSecure) { 
           sCookie += '; secure'; 
        } 
         document.cookie = sCookie; 
 }
function getCookie(name){ //获取cookie
    var strCookie=document.cookie; 
    var arrCookie=strCookie.split("; "); 
    for(var i=0;i<arrCookie.length;i++){ 
    var arr=arrCookie[i].split("="); 
      if(arr[0]==name){
        return decodeURIComponent(arr[1]); 
      }
    } 
    return ""; 
  }
function delCookie(name){//删除cookie
// 该函数检查下cookie是否设置,如果设置了则将过期时间调到过去的时间;
//剩下就交给操作系统适当时间清理cookie啦
if (getCookie(name))
  {
      document.cookie = name + "=" + "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}

jq插件方式:

jq官网http://plugins.jquery.com/搜索cookie插件,几k的大小,使用非常方便:

<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.cookie.js"></script>

在引入以上库文件后,使用方式如下:

<script>
    $.cookie('the_cookie'); //读取Cookie值 
    $.cookie('the_cookie', 'the_value'); //设置cookie的值 
    $.cookie('the_cookie', 'the_value', {expires: 7, path: '/', domain: 'jquery.com', secure: true});//新建一个cookie 包括有效期 路径 域名等 
    $.cookie('the_cookie', 'the_value'); //新建cookie 
    $.cookie('the_cookie', null); //删除一个cookie 
 </script>

以上这篇关于cookie的初识和运用(js和jq)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS对象转换为Jquery对象实现代码
Dec 29 Javascript
node.js适合游戏后台开发吗?
Sep 03 Javascript
JavaScript编写检测用户所使用的浏览器的代码示例
May 05 Javascript
vue制作加载更多功能的正确打开方式
Oct 12 Javascript
JS实现简单抖动效果
Jun 01 Javascript
MvcPager分页控件 适用于Bootstrap
Jun 03 Javascript
Angularjs的键盘事件的绑定
Jul 27 Javascript
Vue计算属性的使用
Aug 04 Javascript
深入浅析javascript继承体系
Oct 23 Javascript
浅析Visual Studio Code断点调试Vue
Feb 27 Javascript
javascript显示动态时间的方法汇总
Jul 06 Javascript
Node.js API详解之 vm模块用法实例分析
May 27 Javascript
纯js实现瀑布流布局及ajax动态新增数据
Apr 07 #Javascript
原生JavaScript实现Ajax的方法
Apr 07 #Javascript
JavaScript数据推送Comet技术详解
Apr 07 #Javascript
js实现商品抛物线加入购物车特效
Nov 18 #Javascript
js类式继承与原型式继承详解
Apr 07 #Javascript
javascript原型继承工作原理和实例详解
Apr 07 #Javascript
浅析JS原型继承与类的继承
Apr 07 #Javascript
You might like
浅谈PHP语法(1)
2006/10/09 PHP
php mssql 时间格式问题
2009/01/13 PHP
php面向对象全攻略 (十七) 自动加载类
2009/09/30 PHP
一步一步学习PHP(4) php 函数 补充2
2010/02/15 PHP
PHP爆绝对路径方法收集整理
2012/09/17 PHP
让PHP显示Facebook的粉丝数量方法
2014/01/08 PHP
php 根据url自动生成缩略图并处理高并发问题
2014/01/23 PHP
浅谈COOKIE和SESSION区别
2015/07/19 PHP
JQuery获取元素文档大小、偏移和位置和滚动条位置的方法集合
2010/01/12 Javascript
javascript学习笔记(二十) 获得和设置元素的特性(属性)
2012/06/20 Javascript
JQuery slideshow的一个小问题(如何发现及解决过程)
2013/02/06 Javascript
JavaScript获取和设置CheckBox状态的简单方法
2013/07/05 Javascript
解析使用JS 清空File控件的路径值
2013/07/08 Javascript
javascript 中__proto__和prototype详解
2014/11/25 Javascript
微信小程序 本地存储及登录页面处理实例详解
2017/01/11 Javascript
vue.js内部自定义指令与全局自定义指令的实现详解(利用directive)
2017/07/11 Javascript
vue+element创建动态的form表单及动态生成表格的行和列
2019/05/20 Javascript
vue使用原生swiper代码实例
2020/02/05 Javascript
不刷新网页就能链接新的js文件方法总结
2020/03/01 Javascript
微信小程序实现拼图小游戏
2020/10/22 Javascript
对Python多线程读写文件加锁的实例详解
2019/01/14 Python
pyqt实现.ui文件批量转换为对应.py文件脚本
2019/06/19 Python
简单了解python 邮件模块的使用方法
2019/07/24 Python
Python算法中的时间复杂度问题
2019/11/19 Python
在pytorch中实现只让指定变量向后传播梯度
2020/02/29 Python
keras中的卷积层&amp;池化层的用法
2020/05/22 Python
饮料业务员岗位职责
2013/12/15 职场文书
优秀志愿者事迹材料
2014/02/03 职场文书
房地产项目策划书
2014/02/05 职场文书
人力资源本科毕业生求职信
2014/06/04 职场文书
消防安全宣传标语
2014/06/07 职场文书
税务干部群众路线教育实践活动自我剖析材料
2014/09/21 职场文书
毕业生就业推荐表导师评语
2014/12/31 职场文书
离婚起诉状范本
2015/05/19 职场文书
python OpenCV学习笔记
2021/03/31 Python
Redis遍历所有key的两个命令(KEYS 和 SCAN)
2021/04/12 Redis