使用jQuery操作cookie之前需要引入jQuery的一个cookie小组件js,代码如下:
 
/*
        jQuery cookie plugins
*/
jQuery.cookie = function(name, value, options) {
    if (typeof value != 'undefined') { // name and value given, set cookie
        options = options || {};
        if (value === null) {
            value = '';
            options.expires = -1;
        }
        var expires = '';
        if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
            var date;
            if (typeof options.expires == 'number') {
                date = new Date();
                date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
            } else {
                date = options.expires;
            }
            expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
        }
        var path = options.path ? '; path=' + options.path : '';
        var domain = options.domain ? '; domain=' + options.domain : '';
        var secure = options.secure ? '; secure' : '';
        document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
    } else { // only name given, get cookie
        var cookieValue = null;
        if (document.cookie && document.cookie != '') {
            var cookies = document.cookie.split(';');
            for (var i = 0; i < cookies.length; i++) {
                var cookie = jQuery.trim(cookies[i]);
                // Does this cookie string begin with the name we want?
                if (cookie.substring(0, name.length + 1) == (name + '=')) {
                    cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
                    break;
                }
            }
        }
        return cookieValue;
    }
};
 
然后开始在页面写操作cookie存储用户信息js函数(方法),保存时间为两年,例子如下:
 
// 写入cookie
function writeHistoryCookie() {
        var formatJson = {"data":[]};
        var jsonCookie = {"screen_name":escape(screen_name),"screen_ico":escape(screen_ico),"screen_location":escape(screen_location),
                        "screen_score":escape(screen_score),"userid":escape(userid)};
        
        // parameters value is null? string return
        if(!jsonCookie.userid){
                showHistory();
                return;
        }
        //read all history
        var objs = $j.cookie('historyCooike');
        var arrayCookies = [];
        var jsonObjs = null;
        if(objs != null){
                                // 值得注意的是,json转字符串和字符串转json的使用方法一定要清楚并检测是否兼容浏览器
                jsonObjs = jQuery.parseJSON(objs);
                for(var i=0;i<jsonObjs.data.length;i++){
                        var js_name = unescape(jsonObjs.data[i].screen_name);
                        var js_ico = unescape(jsonObjs.data[i].screen_ico);
                        var js_id = unescape(jsonObjs.data[i].userid);
                        var js_location = unescape(jsonObjs.data[i].screen_location);
                        var js_score = unescape(jsonObjs.data[i].screen_score);
                        if(userid != js_id){
                                var temp = {"screen_name":escape(js_name),"screen_ico":escape(js_ico),"screen_location":escape(js_location),
                                                                "screen_score":escape(js_score),"userid":escape(js_id)};
                                formatJson.data.push(temp);
                        }
                }
        }
        if(formatJson.data.length > 9){
                formatJson.data.pop();//delete last one
        }
        //put to first
        formatJson.data.unshift(jsonCookie);
        //get string type json
        jsonObjs = JSON.stringify(formatJson);
        //writer
        $j.cookie('historyCooike', jsonObjs , {expires: 365 * 2, path: '/'});
        //writer over show
        showHistory();
}
 
// 读取cookie
function showHistory() {
        var str='';
        var historyCooike = $j.cookie('historyCooike');
        var cookieObjs = null;
        if(historyCooike != null){
                cookieObjs = jQuery.parseJSON(historyCooike);
                for(var i=0;i<cookieObjs.data.length;i++){
                        var cookie_name = unescape(cookieObjs.data[i].screen_name);
                        var cookie_ico = unescape(cookieObjs.data[i].screen_ico);
                        var cookie_id = unescape(cookieObjs.data[i].userid);
                        var cookie_location = unescape(cookieObjs.data[i].screen_location);
                        var cookie_score = unescape(cookieObjs.data[i].screen_score);
                        if(cookie_id == null || cookie_id == 'undefined') continue;
                        str +=  '<li>' +
                              '<div class="imgPL">' +
                                '<a class="blue" href="profile.do?uid=' + cookie_id + '">' +
                                   '<img border="0" src="' + cookie_ico + '">' +
                                '</a>' +
                              '</div>' +
                             '<p>' +
                              '<span><a href="profile.do?uid=' + cookie_id + '">' + cookie_name + '</a></span> [' + cookie_location + ']'+
                               '<br />'+
                                          '微博价值:<em class="red">' + cookie_score + '</em>'+
                            '</p>'+
                                '</li>'
        }
        }
        if(str == '') {
                $j('#right_user_list').html('<li style="text-align:center; line-height:40px; color:#646464; font-size:12px; border:none; padding-bottom:0px;">暂无查询记录</li>');
        }else{
                str += '<div style=" text-align: right; color:#0691C4; cursor:pointer; padding-top: 7px; font-size: 12px; padding-right:10px;"><span id="clearJL" onclick="clearCookie()">清空记录>>></span></div>';
                $j('#right_user_list').html(str);
        }
}
 
// 清除cookie
function clearCookie(){
        $j.cookie('historyCooike', null);
        showHistory();
}

jQuery 操作cookie保存用户浏览信息的更多相关文章

  1. 利用Cookie保存用户身份信息实现免登录

    <%@page import="sun.misc.BASE64Encoder"%> <%@page import="java.util.Base64.E ...

  2. java的web项目中使用cookie保存用户登陆信息

    本文转自:http://lever0066.iteye.com/blog/1735963 最近在编写论坛系统的实现,其中就涉及到用户登陆后保持会话直到浏览器关闭,同时可以使用cookie保存登陆信息以 ...

  3. 使用cookie保存用户登录信息

    写入Cookie HttpCookie _cookie = new HttpCookie("User"); _cookie.Values.Add("UserName&qu ...

  4. jQuery cookie插件保存用户登陆信息

    通过jquery cookie插件保存用户登录信息. 代码: <html>  <head>  <title>cookies.html</title>  ...

  5. Jquery操作cookie,实现简单的记住用户名的操作

     一.jquery.cookie.js介绍  jquery.cookie.js是一个基于jquery的插件,一个轻量级的cookie 插件,可以读取.写入.删除 cookie. jquery.cook ...

  6. php使用session来保存用户登录信息

    php使用session来保存用户登录信息 使用session保存页面登录信息 1.数据库连接配置页面:connectvars.php <?php //数据库的位置 define('DB_HOS ...

  7. jQuery 操作Cookie

    一个轻量级的cookie 插件,可以读取.写入.删除 cookie. 下载地址:http://plugins.jquery.com/cookie/ (在实际中可以用这个保存cookie保存用户的习惯, ...

  8. day 66 Django基础之jQuery操作cookie

    Django基础之jQuery操作cookie   jquery之cookie操作 定义:让网站服务器把少量数据储存到客户端的硬盘或内存,从客户端的硬盘读取数据的一种技术: 下载与引入:jquery. ...

  9. day 62 Django基础之jQuery操作cookie

    Django基础之jQuery操作cookie   jquery之cookie操作 定义:让网站服务器把少量数据储存到客户端的硬盘或内存,从客户端的硬盘读取数据的一种技术: 下载与引入:jquery. ...

随机推荐

  1. ReactNative-地图导航-iOS

    需求描述 项目中,要求接入导航功能,包括“百度map.高德map”. 方案分析 原生开发角度分析 从原生开发的角度分析的话,常规的思路可能是 分别取百度.高德官网,下载对应的SDK然后集成到本地: 创 ...

  2. Wix使用整理(二)

    1)         安装卸载时进行日志记录 Wix 制作的 Installer 的调试很麻烦,没有直接的 Bug 工具,可以通过记录安装日志的方式进行间接调试.命令为 msiexec /i pack ...

  3. javascript无缝滚动原理

    相比之下,无缝拼接能避免切换时出现空白,使用户体验更好! 无缝滚动原理: 制作一个双胞胎,内容跟主体内容一致,样式一致,如果横向排列则并排,当切换的时候,就可以弥补主体空白的地方,其他按普通循环操作即 ...

  4. 使用富文本OHAttributedLabel

    OHAttributedLabel 富文本标签 https://github.com/AliSoftware/OHAttributedLabel 以下是我渲染出来的效果 OHAttributedLab ...

  5. Eclipse中设置中文件javadoc

    Eclipse中设置中文件javadoc 在Eclipse中,我们常常看一些英文的JavaDoc提示或者没有相应的提示是很不习惯的,如下图所示: 我们现在要把这种不习惯的提示改为中文的JavaDOC提 ...

  6. signal

    //signaltest.c // 子线程阻塞,等待信号,然后输出字符串 // 主线程从键盘录入字符,给子线程发信号. #include <stdio.h> #include <un ...

  7. Linux环境MySQL集群配置

    一.介绍 ======== 这篇文档旨在介绍如何安装配置基于2台服务器的MySQL集群.并且实现任意一台服务器出现问题或宕机时MySQL依然能够继续运行. 注意! 虽 然这是基于2台服务器的MySQL ...

  8. Liunx下文件权限详解

    刚接触Linux时对Linux下的文件权限的概念一直很模糊,观念还一直停留在windows下,所以有很多操作一直提示权限不够.为了弄懂文件权限问题我查找了很多资料整理如下,我把这些学习笔记贴出来和大家 ...

  9. 数学图形(2.18)Hyperbolical conical spiral双曲圆锥螺线

    双曲圆锥螺线 #http://www.mathcurve.com/courbes3d/spiralehyperbolique/spiralehyperbolique.shtml vertices = ...

  10. Mysql触发器、模糊查找、存储过程、内置函数

    原本觉得Mysql的一些知识还是差不多了,但是在实际上在项目上用的时候,发现什么都忘记了.现在重新回顾一下,顺便做个笔记. 触发器                                    ...