关于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编程起步(第四课)
Jan 10 Javascript
需要做特殊处理的DOM元素属性的访问
Nov 05 Javascript
js分解url参数(面向对象-极简主义法应用)
Aug 09 Javascript
使用JavaScript修改浏览器URL地址栏的实现代码
Oct 21 Javascript
简单的Jquery全选功能
Nov 07 Javascript
jquery操作select详解(取值,设置选中)
Feb 07 Javascript
ListBox实现上移,下移,左移,右移的简单实例
Feb 13 Javascript
Firefox中使用outerHTML的2种解决方法
Jun 07 Javascript
JavaScript中变量声明有var和没var的区别示例介绍
Sep 15 Javascript
AngularJS 使用 UI Router 实现表单向导
Jan 29 Javascript
js正则表达式校验指定字符串的方法
Jul 23 Javascript
小程序实现日历左右滑动效果
Oct 21 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
Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
2007/01/29 PHP
PHP实现简单搜歌的方法
2015/07/28 PHP
浅析PHP中的闭包和匿名函数
2017/12/25 PHP
CI(CodeIgniter)框架中URL特殊字符处理与SQL注入隐患分析
2019/02/28 PHP
PHP CURL中传递cookie的方法步骤
2019/05/09 PHP
JavaScript 面向对象编程(2) 定义类
2010/05/18 Javascript
jquery删除提示框弹出是否删除对话框
2014/01/07 Javascript
jquery插件冲突(jquery.noconflict)解决方法分享
2014/03/20 Javascript
用JavaScript实现对话框的教程
2015/06/04 Javascript
详解JavaScript对象序列化
2016/01/19 Javascript
jQuery+Ajax实现限制查询间隔的方法
2016/06/07 Javascript
jQuery实现左右滑动的toggle方法
2018/03/03 jQuery
用vue2.0实现点击选中active其他选项互斥的效果
2018/04/12 Javascript
MockJs结合json-server模拟后台数据
2020/08/26 Javascript
JS中比Switch...Case更优雅的多条件判断写法
2019/09/05 Javascript
使用vscode快速建立vue模板过程详解
2019/10/10 Javascript
解决vuex数据页面刷新后初始化操作
2020/07/26 Javascript
vue使用keep-alive实现组件切换时保存原组件数据方法
2020/10/30 Javascript
[02:42]DOTA2英雄基础教程 杰奇洛
2013/12/23 DOTA
python分析网页上所有超链接的方法
2015/05/08 Python
python实现稀疏矩阵示例代码
2017/06/09 Python
Python实现正整数分解质因数操作示例
2018/08/01 Python
Python3.5内置模块之random模块用法实例分析
2019/04/26 Python
实例详解Python模块decimal
2019/06/26 Python
python射线法判断检测点是否位于区域外接矩形内
2019/06/28 Python
Python 利用高德地图api实现经纬度与地址的批量转换
2019/08/14 Python
树莓派4B安装Tensorflow的方法步骤
2020/07/16 Python
详解Python中@staticmethod和@classmethod区别及使用示例代码
2020/12/14 Python
利用Opencv实现图片的油画特效实例
2021/02/28 Python
一级方程式赛车官方网上商店:F1 Store(支持中文)
2018/01/12 全球购物
英国街头品牌:Bee Inspired Clothing
2018/02/12 全球购物
AVI-8手表美国官方商店:AVI-8 USA
2019/04/10 全球购物
空指针到底是什么
2012/08/07 面试题
CAD制图设计师自荐信
2014/01/29 职场文书
个人查摆剖析材料
2014/10/04 职场文书
党员批评与自我批评发言稿
2014/10/14 职场文书