这里有新鲜出炉的 jQuery 示例,程序狗速度看过来!
jQuery 是一个兼容多浏览器的 javascript 框架,核心理念是 write less,do more(写得更少, 做得更多)。jQuery 在 2006 年 1 月由美国人 John Resig 在纽约的 barcamp 发布,吸引了来自世界各地的众多 JavaScript 高手加入,由 Dave Methvin 率领团队进行开发。
这篇文章主要介绍了 jQuery.cookie.js 实现记录最近浏览过的商品功能, 结合实例形式分析了基于 jQuery.cookie.js 插件创建 cookie 及保存浏览记录的操作技巧, 需要的朋友可以参考下
本文实例讲述了 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 程序设计有所帮助。
来源: http://www.phperz.com/article/17/0509/328189.html