Imooc·Java高并发秒杀API(JavaScript模块化)
来源:互联网 发布:linux没有service命令 编辑:程序博客网 时间:2024/05/01 12:12
Imooc·Java高并发秒杀API(JavaScript模块化)
一、seckill.js
var seckill = {URL:{now:function(){return '/seckill/time/now';},exposer:function(seckillId){return '/seckill/'+seckillId+'/exposer';},kill:function(seckillId,md5){return '/seckill/'+seckillId+'/'+md5+'/execution';}},handlerSeckillKill:function(seckillId,node){node.hide().html('<button class="btn btn-primary btn-lg" id="killBtn">开始秒杀!</button>');//$.post('url',{},function(result){$.post(seckill.URL.exposer(seckillId),{},function(result){if(result && result['success']){var exposer = result['data'];//console.log("data"+data);if(exposer['exposed']){var md5 = exposer['md5'];//var killUrl = '/seckill/'+seckillId+'/'+md5+'/execution';var killUrl = seckill.URL.kill(seckillId,md5);$('#killBtn').one('click',function(){$(this).addClass('disabled');$.post(killUrl,{},function(data){if(data && data['success']){var result = data['data'];var state = result['state'];var stateInfo = result['stateInfo'];//node.html(stateInfo);node.html('<span class="label label-success">'+stateInfo+'</span>');}});});node.show();} else {var now = exposer['now'];var start = exposer['start'];var end = exposer['end'];seckill.countdown(seckillId,now,start,end);}} else {console.log("data"+data);}});},validatePhone:function(phone){if(phone && phone.length == 11 && !isNaN(phone)) return true;else return false;},countdown:function(seckillId,nowTime,startTime,endTime){var seckillBox = $('#seckill-box');if(nowTime > endTime) seckillBox.html('秒杀结束!');else if(nowTime < startTime) {var killTime = new Date(startTime + 1000);seckillBox.countdown(killTime,function(event){var format = event.strftime('秒杀计时:%D天 %H时 %M分 %S秒');seckillBox.html(format);}).on('finish.countdown',function(){seckill.handlerSeckillKill(seckillId,seckillBox);});}else seckill.handlerSeckillKill(seckillId,seckillBox);},detail:{init:function(params){var killPhone = $.cookie('killPhone');if(!seckill.validatePhone(killPhone)){var killPhoneModal = $('#killPhoneModal');killPhoneModal.modal({show: true,backdrop: 'static',keyboard: false});$('#killPhoneBtn').click(function(){var inputPhone = $('#killPhoneKey').val();if(seckill.validatePhone(inputPhone)){$.cookie('killPhone',inputPhone,{expires:7,path:'/seckill'});window.location.reload();} else {$('#killPhoneMessage').hide().html('<label class="label label-danger">手机号错误!</label>').show(300);}});}//$.get('/seckill/time/now',{},function(result){var startTime = params['startTime'];var endTime = params['endTime'];var seckillId = params['seckillId'];$.get(seckill.URL.now(),{},function(result){if(result && result['success']){var nowTime = result['data'];seckill.countdown(seckillId,nowTime,startTime,endTime);} else {console.log("data"+data);}});}}}
二、效果图
0 0
- Imooc·Java高并发秒杀API(JavaScript模块化)
- Imooc·Java高并发秒杀API(三)
- Imooc·Java高并发秒杀API(数据库sql)
- Imooc·Java高并发秒杀API(Spring-test与junit)
- Imooc·Java高并发秒杀API(枚举与异常处理)
- #Java 高并发秒杀API 笔记
- Java高并发秒杀API
- Java高并发秒杀系统API
- Java高并发秒杀API之高并发优化(四)
- JAVA高并发秒杀API项目的学习笔记
- Java高并发秒杀API(二)之Service层
- Java高并发秒杀API(三)之Web层
- Java高并发(一)-- 秒杀
- 慕课网-java高并发秒杀api之高并发优化-总结
- Java高并发秒杀API(四)之高并发优化
- Java高并发秒杀API之DAO层实现(一)
- Java高并发秒杀API之service层实现(二)
- Java高并发秒杀API之web层实现(三)
- h5开发中常见的问题汇总
- 带百分比显示的seekbar
- Kintinuous 解析
- Charles 从入门到精通
- 公开的海量数据集 Public Research-Quality Datasets
- Imooc·Java高并发秒杀API(JavaScript模块化)
- android 蓝牙 spp协议
- 程序员面对分歧和难题应当具备的态度
- python 操作数据库
- NoDefClassException解决
- 字符串按指定长度剪切 代码段
- 异常org.jetbrains.android.uipreview。RenderingException:未能加载
- ZF2入门:Windows环境下从零开始Zend Framework 2.0 (ZF2)环境搭建
- kafka初探