JQuery.cookie.js实现最近浏览过的商品

JQuery实现最近浏览过的商品

1、jquery.cookie.js

/*jquery.cookie.js */
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;
    }
};

2、实现最近浏览过的商品

var cookieName = "PrdIDCookie";   //cookie名称
var nid;                          //最新访问的商品ID
var N = 5;                        //设置cookie保存的浏览记录的条数

//记录最近浏览过的商品
function HistoryRecord() {
    var historyp;
    nid = $("#PrdID").val();
    if (nid == null || nid == "") {
        return;
    }

    //判断是否存在cookie
    if ($.cookie(cookieName) == null) //cookie 不存在
    {
        //创建新的cookie,保存浏览记录
        $.cookie(cookieName, nid, { expires: 7, path: '/' });
    }
    else //cookies已经存在
    {
        //获取浏览过的商品编号ID
        historyp = $.cookie(cookieName);
    };

    //分解字符串为数组
    var pArray = historyp.split(',');
    //最新访问的商品编号放置载最前面
    historyp = nid;
    //判断是该商品编号是否存在于最近访问的记录里面
    var count = 0;
    for (var i = 0; i < pArray.length; i++) {
        if (pArray[i] != nid) {
            historyp = historyp + "," + pArray[i];
            count++;
            if (count == N - 1) {
                break;
            }
        }
    }
    //修改cookie的值
    $.cookie(cookieName, historyp);
}

//获取最近浏览过的商品
function BindHistory() {
    var historyp = "";
    
    if ($.cookie(cookieName) != null) //cookie 不存在
    {
        //获取浏览过的商品ID
        historyp = $.cookie(cookieName);
    }

    if (historyp == null && historyp == "") {
        return;
    }
    else
    {
        var prdIDs = [];   //将商品ID以列表或数据的方式保存
        var pArray = historyp.split(',');
        for (var i = 0; i < pArray.length; i++) {
            if (pArray[i] != "") {
                //alert(pArray[i]);
                prdIDs.push(pArray[i]);
            }
        }
        //--->请求商品详细详细...
    }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

pan_junbiao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值