您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息
三六零分类信息网 > 商丘分类信息网,免费分类信息发布

jquery.cookie实现的客户端购物车操作实例

2024/11/16 9:25:05发布60次查看
本文实例讲述了jquery.cookie实现的客户端购物车操作。分享给大家供大家参考,具体如下:
//购物车 var cart = function () { this.count = 0; this.total = 0; this.items = new array(); }; //购物车集合对象 var cartitem = function () { this.id = 0; this.name = ""; this.count = 0; this.price = 0; }; //购物车操作 var carthelper = function () { this.cookiename = "yxhcart"; this.clear = function () { var cart = new cart(); this.save(cart); return cart; }; //向购物车添加 this.add = function (id, name, count, price) { var cart = this.read(); var index = this.find(id); //如果id已存在,覆盖数量 if (index > -1) { cart.total -= (((cart.items[index].count * 100) * (cart.items[index].price * 100)) / 10000); cart.items[index].count = count; cart.total += (((cart.items[index].count * 100) * (cart.items[index].price * 100)) / 10000); } else { var item = new cartitem(); item.id = id; item.name = name; item.count = count; item.price = price; cart.items.push(item); cart.count++; cart.total += (((cart.items[index].count * 100) * (cart.items[index].price * 100)) / 10000); } this.save(cart); return cart; }; //改变数量 this.change = function (id, count) { var cart = this.read(); var index = this.find(id); cart.items[index].count = count; this.save(cart); return cart; }; //移出购物车 this.del = function (id) { var cart = this.read(); var index = this.find(id); if (index > -1) { var item = cart.items[index]; cart.count--; cart.total = cart.total - (((item.count * 100) * (item.price * 100)) / 10000); cart.items.splice(index, 1); this.save(cart); } return cart; }; //根据id查找 this.find = function (id) { var cart = this.read(); var index = -1; for (var i = 0; i < cart.items.length; i++) { if (cart.items[i].id == id) { index = i; } } return index; }; //cookie操作 this.save = function (cart) { var source = ""; for (var i = 0; i < cart.items.length; i++) { if (source != "") { source += "|$|"; } source += this.itemtostring(cart.items[i]); } $.cookie(this.cookiename, source); }; this.read = function () { //读取cookie中的集合 var source = $.cookie(this.cookiename); var cart = new cart(); if (source == null || source == "") { return cart; } var arr = source.split("|$|"); cart.count = arr.length; for (var i = 0; i < arr.length; i++) { var item = this.itemtoobject(arr[i]); cart.items.push(item); cart.total += (((item.count * 100) * (item.price * 100)) / 10000); } return cart; }; this.itemtostring = function (item) { return item.id + "||" + escape(item.name) + "||" + item.count + "||" + item.price; }; this.itemtoobject = function (str) { var arr = str.split('||'); var item = new cartitem(); item.id = arr[0]; item.name = unescape(arr[1]); item.count = arr[2]; item.price = arr[3]; return item; }; };
希望本文所述对大家jquery程序设计有所帮助。
商丘分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录