jQuery.cookie.js实现记录最近浏览过的商品功能示例
程序员文章站
2023-10-31 17:48:58
本文实例讲述了jquery.cookie.js实现记录最近浏览过的商品功能。分享给大家供大家参考,具体如下:
1、jquery.cookie.js
/*jque...
本文实例讲述了jquery.cookie.js实现记录最近浏览过的商品功能。分享给大家供大家参考,具体如下:
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]); } } //--->请求商品详细详细... } }
更多关于jquery相关内容感兴趣的读者可查看本站专题:《jquery的cookie操作技巧总结》、《jquery扩展技巧总结》、《jquery常用插件及用法总结》、《jquery表格(table)操作技巧汇总》、《jquery常见经典特效汇总》及《jquery选择器用法总结》
希望本文所述对大家jquery程序设计有所帮助。
上一篇: 虎门销烟为何不用火烧 而是偏偏用生石灰呢
下一篇: 赵匡胤迁都长安 为何他的弟弟却极力反对呢