关于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 相关文章推荐
JavaScript高级程序设计(第3版)学习笔记11 内建js对象
Oct 11 Javascript
javascript实现数字验证码的简单实例
Feb 10 Javascript
JQuery中使用Ajax赋值给全局变量失败异常的解决方法
Aug 18 Javascript
JavaScript跨平台的开源框架NativeScript
Mar 24 Javascript
jQuery中extend函数详解
Jul 13 Javascript
JavaScript中this详解
Sep 01 Javascript
全面了解构造函数继承关键apply call
Jul 26 Javascript
使用vue与jquery实时监听用户输入状态的操作代码
Sep 19 jQuery
JS数组求和的常用方法总结【5种方法】
Jan 14 Javascript
Vue.js实现大屏数字滚动翻转效果
Nov 29 Javascript
JS异步宏队列与微队列原理区别详解
Jul 02 Javascript
原生JavaScript实现购物车
Jan 10 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中的unset究竟会不会释放内存
2013/07/18 PHP
php生成图片验证码
2015/06/09 PHP
php自定义函数br2nl实现将html中br换行符转换为文本输入中换行符的方法【与函数nl2br功能相反】
2017/02/17 PHP
解决PHP使用CURL发送GET请求时传递参数的问题
2019/10/11 PHP
JavaScript 滚轮事件使用说明
2010/03/07 Javascript
js 小数取整的函数
2010/05/10 Javascript
加载jQuery后$冲突的解决办法
2010/07/09 Javascript
Javascript new Date().valueOf()的作用与时间戳由来详解
2013/04/24 Javascript
Extjs4中Form的使用之本地hiddenfield
2013/11/26 Javascript
JS的事件绑定深入认识
2014/06/26 Javascript
JQuery设置获取下拉菜单某个选项的值(比较全)
2014/08/05 Javascript
Internet Explorer 11 浏览器介绍:别叫我IE
2014/09/28 Javascript
Javascript中的对象和原型(二)
2016/08/12 Javascript
浅谈JavaScript 数据属性和访问器属性
2016/09/01 Javascript
Jil,高效的json序列化和反序列化库
2017/02/15 Javascript
微信小程序 页面传值详解
2017/03/10 Javascript
Ionic2开发环境搭建教程
2020/08/20 Javascript
JS获取字符对应的ASCII码实例
2017/09/10 Javascript
vue router 通过路由来实现切换头部标题功能
2019/04/24 Javascript
layer弹出层取消遮罩的方法
2019/09/25 Javascript
jQuery实现form表单基于ajax无刷新提交方法实例代码
2019/11/04 jQuery
JS实现星星海特效
2019/12/24 Javascript
js实现简单音乐播放器
2020/06/30 Javascript
[02:49]2014DOTA2电竞也是体育项目! 势要把荣誉带回中国!
2014/07/20 DOTA
Python实现简单的文件传输与MySQL备份的脚本分享
2016/01/03 Python
Python中property属性实例解析
2018/02/10 Python
Django REST framework内置路由用法
2019/07/26 Python
Django ORM filter() 的运用详解
2020/05/14 Python
Python urlopen()参数代码示例解析
2020/12/10 Python
纯CSS3单页切换导航菜单界面设计的简单实现
2016/08/16 HTML / CSS
什么是GWT的Entry Point
2013/08/16 面试题
php优化查询foreach代码实例讲解
2021/03/24 PHP
网络工程专业毕业生推荐信
2013/10/28 职场文书
党的群众路线教育实践活动个人对照检查材料(公安)
2014/11/05 职场文书
大学生青年志愿者活动总结
2015/05/06 职场文书
硕士学位申请报告
2015/05/15 职场文书