jQuery.cookie.js实现记录最近浏览过的商品功能示例
本文实例讲述了jQuery.cookie.js实现记录最近浏览过的商品功能。分享给大家供大家参考,具体如下:
1、jquery.cookie.js
/*jquery.cookie.js*/ jquery.cookie=function(name,value,options){ if(typeofvalue!='undefined'){//nameandvaluegiven,setcookie options=options||{}; if(value===null){ value=''; options.expires=-1; } varexpires=''; if(options.expires&&(typeofoptions.expires=='number'||options.expires.toUTCString)){ vardate; if(typeofoptions.expires=='number'){ date=newDate(); date.setTime(date.getTime()+(options.expires*24*60*60*1000)); }else{ date=options.expires; } expires=';expires='+date.toUTCString();//useexpiresattribute,max-ageisnotsupportedbyIE } varpath=options.path?';path='+options.path:''; vardomain=options.domain?';domain='+options.domain:''; varsecure=options.secure?';secure':''; document.cookie=[name,'=',encodeURIComponent(value),expires,path,domain,secure].join(''); }else{//onlynamegiven,getcookie varcookieValue=null; if(document.cookie&&document.cookie!=''){ varcookies=document.cookie.split(';'); for(vari=0;i<cookies.length;i++){ varcookie=jQuery.trim(cookies[i]); //Doesthiscookiestringbeginwiththenamewewant? if(cookie.substring(0,name.length+1)==(name+'=')){ cookieValue=decodeURIComponent(cookie.substring(name.length+1)); break; } } } returncookieValue; } };
2、实现最近浏览过的商品
varcookieName="PrdIDCookie";//cookie名称 varnid;//最新访问的商品ID varN=5;//设置cookie保存的浏览记录的条数 //记录最近浏览过的商品 functionHistoryRecord(){ varhistoryp; 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); }; //分解字符串为数组 varpArray=historyp.split(','); //最新访问的商品编号放置载最前面 historyp=nid; //判断是该商品编号是否存在于最近访问的记录里面 varcount=0; for(vari=0;i<pArray.length;i++){ if(pArray[i]!=nid){ historyp=historyp+","+pArray[i]; count++; if(count==N-1){ break; } } } //修改cookie的值 $.cookie(cookieName,historyp); } //获取最近浏览过的商品 functionBindHistory(){ varhistoryp=""; if($.cookie(cookieName)!=null)//cookie不存在 { //获取浏览过的商品ID historyp=$.cookie(cookieName); } if(historyp==null&&historyp==""){ return; } else { varprdIDs=[];//将商品ID以列表或数据的方式保存 varpArray=historyp.split(','); for(vari=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程序设计有所帮助。