关于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 相关文章推荐
IE6 弹出Iframe层中的文本框“经常”无法获得输入焦点
Dec 27 Javascript
JavaScript判断一个字符串是否包含指定子字符串的方法
Mar 18 Javascript
12306 刷票脚本及稳固刷票脚本(防挂)
Jan 04 Javascript
从vue源码解析Vue.set()和this.$set()
Aug 30 Javascript
js中获取URL参数的共用方法getRequest()方法实例详解
Oct 24 Javascript
详解一个小实例理解js原型和继承
Apr 24 Javascript
详解微信小程序缓存--缓存时效性
May 02 Javascript
JavaScript创建、读取和删除cookie
Sep 03 Javascript
JavaScript canvas绘制渐变颜色的矩形
Feb 18 Javascript
Vue filter 过滤器、以及在table中的使用介绍
Sep 07 Javascript
Vue实现手机号、验证码登录(60s禁用倒计时)
Dec 19 Vue.js
nestjs中异常过滤器Exceptionfilter的具体使用
Feb 07 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
第八节--访问方式
2006/11/16 PHP
一个简单的PHP投票程序源码
2007/03/11 PHP
php 中英文语言转换类
2011/09/07 PHP
php中异常处理方法小结
2015/01/09 PHP
PHP微信开发之查询微信精选文章
2016/06/23 PHP
浅谈ThinkPHP5.0版本和ThinkPHP3.2版本的区别
2017/06/17 PHP
laravel使用数据库测试注意事项
2020/04/10 PHP
JQuery 图片延迟加载并等比缩放插件
2009/11/09 Javascript
Javascript类定义语法,私有成员、受保护成员、静态成员等介绍
2011/12/08 Javascript
JS 实现Json查询的方法实例
2013/04/12 Javascript
js下拉框二级关联菜单效果代码具体实现
2013/08/03 Javascript
用jQuery模拟select下拉框的简单示例代码
2014/01/26 Javascript
JavaScript中三个等号和两个等号你了解多少
2017/07/04 Javascript
Vue 2.0学习笔记之Vue中的computed属性
2017/10/16 Javascript
详解NODEJS基于FFMPEG视频推流测试
2017/11/17 NodeJs
微信小程序自定义对话框弹出和隐藏动画
2018/07/19 Javascript
Vue路由history模式解决404问题的几种方法
2018/09/29 Javascript
Angular7创建项目、组件、服务以及服务的使用
2019/02/19 Javascript
使用Angular9和TypeScript开发RPG游戏的方法
2020/03/25 Javascript
JavaScript接口实现方法实例分析
2020/05/16 Javascript
浅谈js中的attributes和Attribute的用法与区别
2020/07/16 Javascript
vue中解决chrome浏览器自动播放音频和MP3语音打包到线上的实现方法
2020/10/09 Javascript
django模型层(model)进行建表、查询与删除的基础教程
2017/11/21 Python
Django中的CBV和FBV示例介绍
2018/02/25 Python
将Django项目部署到CentOs服务器中
2018/10/18 Python
Python3 合并二叉树的实现
2019/09/30 Python
Python之Numpy的超实用基础详细教程
2019/10/23 Python
Python Tornado实现WEB服务器Socket服务器共存并实现交互的方法
2020/05/26 Python
详解查看Python解释器路径的两种方式
2020/10/15 Python
银行实习自我鉴定
2013/10/12 职场文书
留学顾问岗位职责
2014/04/14 职场文书
建筑工地大门标语
2014/06/18 职场文书
2016学校元旦晚会经典开场白台词
2015/12/03 职场文书
CSS 文字装饰 text-decoration & text-emphasis 详解
2021/04/06 HTML / CSS
vue el-table实现递归嵌套的示例代码
2022/08/14 Vue.js
MySQL count(*)统计总数问题汇总
2022/09/23 MySQL