javascript 面向对象编程
来源:互联网 发布:美国网络恐怖组织 编辑:程序博客网 时间:2024/05/29 10:06
1.http://www.ibm.com/developerworks/cn/web/1304_zengyz_jsoo/
/*普通商品操作*/function Cart_Model() {this.cart_url = "/cart";this.cart_ids = [];this.is_init = false;this.add = function(goods_id, num, success, fail){var _this = this;var data = {goods_id : goods_id, num : num};$.post(this.cart_url + "/add", data, function(result){if(result.s == 10) {goto_login(function(){window.location.reload();});}else if(result.s == 1) {if(result.d.one_step_buy == 1) {window.location.href = "/checkout";return;}else{_this.is_init = false;success?success(result):"";if($('.top_cart_list').length>0) {$.get("/cart/top_cartlist", function(result){$('.top_cart_list').html(result);}, "html");}}}else {fail?fail(result):"";}}, "json");};this.del = function(cart_id, success, fail) {var _this = this;$.post(this.cart_url + "/del", {cart_id:cart_id}, function(result){if(result.s == 1) {_this.is_init = false;success?success(result):"";}else {fail?fail(result):"";}}, "json");};this.delall = function(success, fail) {var _this = this;var chk_value = []; $('.cart_list .selectAll:checked').each(function(){ chk_value.push($(this).val());});if(chk_value.length <= 0) {alert("未选中任何商品");}$.post(this.cart_url + "/delall", {cart_ids:chk_value}, function(result){if(result.s == 1) {_this.is_init = false;success?success(result):"";} else {fail?fail(result):"";}}, "json");}this.change = function(cart_id, num, success, fail){var _this = this;var data = {cart_id : cart_id, num : num};$.post(this.cart_url + "/change", data, function(result){if(result.s == 1) {_this.is_init = false;success?success(result):"";} else {fail?fail(result):"";}}, "json");};this.select = function(cart_ids, success) {var is_min = 0;var cart_class = ".cart_list";if(typeof(is_cart) == "undefined") {is_min = 1;cart_class = ".mini-cart";}this.cart_ids = cart_ids;this.is_init = false;this.init();};this.count = function() {$.get(this.cart_url + "/count", {is_min:is_min}, function(result){$(cart_class).html(result);}, "html");};this.init = function() {var _this = this;if(this.is_init) return;var is_min = 0;var cart_class = ".cart_list";if(typeof(is_cart) == "undefined") {is_min = 1;cart_class = ".mini-cart";}if($(cart_class).length>0) {$.get(this.cart_url + "/cartlist", {is_min:is_min, cart_ids:this.cart_ids}, function(result){ console.log("********"+this.cart_ids);$(cart_class).html(result);if(is_min) {setHeight();}_this.is_init = true;$(".cart_goods_num").html($("#cart_count").text());if($('.top_cart_list').length>0) {$.get("/cart/top_cartlist", function(result){$('.top_cart_list').html(result);}, "html");}}, "html");}else if($(".cart_goods_num").length>0){$.get(this.cart_url + "/cartcount", function(result){$(".cart_goods_num").html(result.d.cartcount);}, "json");}};}$(document).ready(function(){setTimeout(function(){ cart.init(); }, 500);$(".buy_one").bind("click",function(e){var goods_id = parseInt($(this).attr("this_id"));if(goods_id <=0) {return false;}cart.add(goods_id, 1, function(result){$(".cart_msg").show();$(".cart_msg").find(".fr").html("<strong>" + result.m + "</strong><p>您可以<a href='"+cart.cart_url+"'>去购物车结算</a></p>");$(".cart_goods_num").html(result.d.count);setTimeout(function(){$(".cart_msg .ico_close").click();}, 3000);}, function(result){$(".cart_msg").show();$(".cart_msg").find(".fr").html(result.m);setTimeout(function(){$(".cart_msg .ico_close").click();}, 3000);});});$(".buy_btn").bind("click",function(e){var goods_id = parseInt($(".buy_value").attr("this_id"));var num = parseInt($(".buy_value").val());if(goods_id <=0) {return false;}if(num <= 0) {return false;}cart.add(goods_id,num, function(result){/*$("#flyItem").css({left:e.pageX, top:e.pageY-$("body").scrollTop() });$("#flyItem").css("visibility", "visible");$("#flyItem").find("img").attr("src", $("#goods_imgs").find("img").attr("src"));// 需要重定位myParabola.position().move();*//*..$(".cart_msg").show();$(".cart_msg").find(".fr").html("<strong>" + result.m + "</strong><p>您可以<a href='"+cart.cart_url+"'>去购物车结算</a></p>");$(".cart_goods_num").html(result.d.count);setTimeout(function(){$(".cart_msg .ico_close").click();}, 3000);*/ window.location.href='/cart/success/item_id/'+cart_add_item_id+'/'+goods_id;}, function(result){$(".cart_msg").show();$(".cart_msg").find(".fr").html(result.m);setTimeout(function(){$(".cart_msg .ico_close").click();}, 3000);});});$(".cart_list").on("click", ".delall", function(){cart.delall(function(){cart.init();});});$(".cart_list").on("click", ".del_cart", function(e) {var cart_id = $(this).attr("this_id");var top = $(this).offset().top - $(".del_cart_tip").height() - parseInt($(".del_cart_tip").css("padding-top")) - parseInt($(".del_cart_tip").css("padding-bottom")) - 5; var left = $(this).offset().left - $(".del_cart_tip").width()/2 + $(this).width()/2;$(".del_cart_tip").show().offset({left:left,top:top}).find(".confirm").attr("this_id", cart_id);});$(".del_cart_tip .confirm").click(function(){var cart_id = $(this).attr("this_id");cart.del(cart_id, function(result) {cart.init();$(".del_cart_tip .cancel").click();}, function(result){alert(result.m);$(".del_cart_tip .cancel").click();});});$(".cart_panel").on("click", ".del_cart", function(){var cart_id = $(this).parent().find(".tm-mcElect").val();cart.del(cart_id, function(result) {cart.init();}, function(result){alert(result.m);});});$(".del_cart_tip .cancel").click(function(){$(".del_cart_tip").hide();});var change_timeout = null;$(".cart_list").on("change", ".buy_value", function(e) {$(this).val(parseInt($(this).val()));var cart_id = $(this).attr("this_id");var num = $(this).val();var _this = $(this);clearTimeout(change_timeout);change_timeout = setTimeout(function(){cart.change(cart_id, num, function(result) {cart.init();}, function(result){_this.parent().next().html(result.m);_this.parent().next().show();setTimeout(function(){_this.parent().next().stop();_this.parent().next().fadeOut(500);}, 3000)_this.val(result.d);});},300);});$(".cart_list").on("click", ".buy_value_min", function(e) {var val = parseInt($(this).next().val());$(this).next().val((val-1)<1?1:(val-1));$(this).next().change();});$(".cart_list").on("click", ".buy_value_add", function(e) {var val = parseInt($(this).prev().val());$(this).prev().val(val+1);$(this).prev().change();});$(".cart_list").on("change", ".selectAll", function(){$(".choice").prop("checked", $(".selectAll:not(:checked)").length<=0);var chk_value =[]; $('.cart_list .selectAll:not(:checked)').each(function(){ chk_value.push($(this).val());});cart.select(chk_value);});$(".cart_list").on("change", ".choice", function(){$(".selectAll").prop("checked", $(this).prop("checked"));$(".selectAll").eq(0).change();$(".choice").not($(this)).prop("checked", $(this).prop("checked"));});$(".cart_panel").on("change", ".tm-mcElect", function(){$(".tm-mcElectCart").prop("checked", $(".tm-mcElect:not(:checked)").length<=0);var chk_value =[]; $('.cart_panel .tm-mcElect:not(:checked)').each(function(){ chk_value.push($(this).val());});cart.select(chk_value);});$(".cart_panel").on("change", ".tm-mcElectCart", function(){$(".tm-mcElect").prop("checked", $(this).prop("checked"));$(".tm-mcElect").change();});$(".cart_msg .ico_close").click(function(){$(".cart_msg").hide();return false;});$(".cart_msg .ico_close").mouseenter(function(){return false;});$(".cart_list").on("click", ".goto_login", function(){goto_login(function(){is_login = 1;cart.select([]);});});$(".cart_list").on("click", "#checkout", function(){if(!is_login) {goto_login(function(){is_login = 1;cart.select([]);});return false;}var chk_value =[];$('.cart_list .selectAll:not(:checked)').each(function(){ chk_value.push($(this).val());});if($('.cart_list .selectAll:checked').length <= 0) {alert("未选中任何商品");return false;}post('checkout', {cart_ids:chk_value});});$('.goods_box').on("click", ".add_favorites", function(){if(!is_login) {location.href="/login";}var id = $(this).attr("this_id");$.post("user/addFavorites", {id:id}, function(result){if(result.s == 1) {alert(result.m);} else {alert(result.m);}}, "json");});$('.cart_list').on("click", ".add_favorites", function(){if(!is_login) {goto_login(function(){is_login = 1;cart.select([]);});return false;}var id = $(this).attr("this_id");var item_id = $(this).attr("this_item_id");$.post("/favorites", {'goods_id':id,'item_id':item_id}, function(data){if(data.ret > 0) {$(".cart_add_favorites_suc").show();setTimeout("$('.cart_add_favorites_suc').hide()",2000);} else {$(".cart_add_favorites_suc").hide();alert('收藏失败!');}}, "json");});$('.top_cart,.top_cart_list').hover(function(){ $('.top_cart').addClass('on').find('i').removeClass('icon_arrow').addClass('icon_up'); $('.top_cart_list ').show(); },function(){ $('.top_cart_list ').hide(); $('.top_cart').removeClass('on').find('i').removeClass('icon_up').addClass('icon_arrow'); });});function post(URL, PARAMS) { var temp = document.createElement("form"); temp.action = URL; temp.method = "post"; temp.style.display = "none"; for (var x in PARAMS) { if(typeof(PARAMS[x]) == "object") { for(var i in PARAMS[x]) { var opt = document.createElement("textarea"); opt.name = x + "[]"; opt.value = PARAMS[x][i]; temp.appendChild(opt); } } else { var opt = document.createElement("textarea"); opt.name = x; opt.value = PARAMS[x]; temp.appendChild(opt); } } document.body.appendChild(temp); temp.submit(); return temp; } var cart = new Cart_Model();var _login_success = function() {};function goto_login(success) {$.get("/login?is_small=1",function(data){_login_success = success;$("#dialog").html(data);$("#login_panel").show();$("#register_panel").hide();var dialogW=$('#dialog').width();var dialogH=$('#dialog').height();$('#dialog').css({'marginLeft':-dialogW/2,'marginTop':-dialogH/2});$('#dialog,#fullbg').fadeIn();});}/*反向团购购买操作*/function Group_rev_Model() {this.add = function(id, goods_id, num, success, fail){var _this = this;$.post("/cart/group_rev_add", {id: id, goods_id: goods_id, num: num}, function(ret){if(ret.s == 10) {goto_login(function(){window.location.reload();});}else if(ret.s == 1) {if(success) {success(ret);}else{window.location.href = "/checkout/group_rev";}}else {alert(ret.m);fail?fail(ret):"";}}, "json");};}var group_rev = new Group_rev_Model();/*秒杀购买操作*/function Seckill_Model() {this.add = function(id, goods_id, num, success, fail){var _this = this;$.post("/cart/seckill_add", {id: id, goods_id: goods_id, num: num}, function(ret){if(ret.s == 10) {goto_login(function(){window.location.reload();});}else if(ret.s == 5) { $.simple_dialog.show({ message: ret.m, messageStyle:{fontSize:'16px', color:'#f60', textAlign:'center'}, dialogStyle:{width:'380px'}, overlayer: 1, button_ok: { name:'去订单列表', visiable:1, callback:function(){ window.location.href = "/user/orderList"; } }, button_cancel: {visiable: 0} });}else if(ret.s == 1) {if(success) {success(ret);}else{window.location.href = "/checkout/seckill";}}else {alert(ret.m);fail?fail(ret):"";}}, "json");};}var seckill = new Seckill_Model();
0 0
- JavaScript 面向对象编程
- JavaScript 面向对象编程
- javascript面向对象编程
- javascript 面向对象编程
- JavaScript面向对象编程
- JavaScript 面向对象编程
- JAVASCRIPT - - 面向对象编程
- JavaScript面向对象编程
- JavaScript面向对象编程
- JavaScript面向对象编程
- javascript面向对象编程
- JavaScript面向对象编程
- javascript面向对象编程
- JavaScript面向对象编程
- JavaScript面向对象编程
- JavaScript面向对象编程
- JavaScript面向对象编程
- JavaScript面向对象编程
- mackdown语法
- 为ListView每个Item上面的按钮添加事件
- leetcode:Sqrt(x) 【Java】
- Android图片加载与缓存开源框架:Android Glide
- 菜鸟的Android之旅(二)——Activity(一)
- javascript 面向对象编程
- 2、数组(数据结构)
- Python爬虫爬取一篇韩寒新浪博客
- XAudio2学习七之工程迁移错误
- $.ajax属性及用法
- Linux 多线程与进程间通信 实例 1
- Swift快速入门(五)集合
- hybrid App开发中关于返回键的逻辑控制
- my97datepicker日期限制