一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

jQuery.cookie.js实现记录最近浏览过的商品功能示例

时间:2017-03-03 编辑:简简单单 来源:一聚教程网

1、jquery.cookie.js

 代码如下复制代码

/*jquery.cookie.js */

jquery.cookie =function(name, value, options) {

  if(typeofvalue !='undefined') {// name and value given, set cookie

    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();// use expires attribute, max-age is not supported by IE

    }

    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{// only name given, get cookie

    varcookieValue =null;

    if(document.cookie && document.cookie !='') {

      varcookies = document.cookie.split('');

      for(vari = 0; i < cookies.length; i++) {

        varcookie = 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;

        }

      }

    }

    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]);

      }

    }

    //--->请求商品详细详细...

  }

}

热门栏目