红米手机抢购的js代码

前端技术 2023/09/07 JavaScript

以下就是小米抢购时的JS代码,分析一下就可以用它实现一个红米抢购软件,大家根据这个代码实现自己想要的功能吧!

复制代码 代码如下:

hdcontrol({\"stime\":1381645438,\"status\":{\"allow\":false,\"miphone\":{\"hdstart\":false,\"hdstop\":false,\"hdurl\":\"\",\"duration\":null},\"mibox\":{\"hdstart\":false,\"hdstop\":false,\"hdurl\":\"\",\"duration\":null}}})

复制代码 代码如下:

function forNum(a){
return 10>a?\"0\"+a:a
}
function countdown(a,b){
varc=newDate(b).getTime()/1e3,
d=c-a,
e=parseInt(d%60),
f=parseInt(d/60%60),g=parseInt(d/3600%24),
h=parseInt(d/3600/24),
i=[e.toString(),
f.toString(),
g.toString()];

return0>=d?[\"00小时00分00秒\",!0]:h>0?(window._timestr=h+\"天\"+forNum(i[2])+\"时\"+forNum(i[1])+\"分\"+forNum(i[0])+\"秒\",[h+\"<span>天</span>\"+forNum(i[2])+\"<span>时</span>\"+forNum(i[1])+\"<span>分</span>\"+forNum(i[0])+\"<span>秒</span>\",!1]):(window._timestr=forNum(i[2])+\"时\"+forNum(i[1])+\"分\"+forNum(i[0])+\"秒\",[forNum(i[2])+\"<span>时</span>\"+forNum(i[1])+\"<span>分</span>\"+forNum(i[0])+\"<span>秒</span>\",!1])}
functionWebEventTrigger(a,b){
try{
if(WE&&WE.trigger)
return\"string\"!=typeofb&&(b=JSON.stringify(b)),WE.trigger(a,b)
}catch(c){}
return!1
}
functionisApp(){
try{
if(WE)return!0
}catch(a){}
return!1
}
varquickBuy={init:function(){
vara=this;
this.config={},
this.config.hdurl={miphone:\"m3/840410D8656D74E5F334591BD8A408A726799AEC13477D90B5E48DAD36547351/4334F49A1EE391261005E8AC5A0C9D2FDA23BB72A2D20AB3F58343496FD4983D/tip_SaledOverAll.html\",mibox:\"tv/B1CF7B57BFEAE1EBC37700694C123D894C668BF11F6F25D59311FD36942B3D6A/130F1B18D11F53CA1D0147B24E926C5A9B7676E57BE3D47959D6557545E8A339/tip_SaledOverAll.html\"
},
this.config.mode=\"\",
this.mode={miphone:!1,mibox:!1},
this.modeModals={miphone:\"#modal_miphone\",mibox:\"#modal_mibox\"},
this.modeCookies={miphone:\"xm_hd_so_phone\",mibox:\"xm_hd_so_box\"},
this.config.startDate=+newDate(\"10/15/201312:00:00\"),
this.maskLoad=$(\"#maskLoad\"),
this.config.minSignTime=120,
this.results=null,
this.timer=null,
this.timeCount=Math.floor(Math.abs(10*Math.random()-5))+5;
varb=!0;
for(varcinthis.mode)
$.cookie(this.modeCookies[c])||(b=!1),$.cookie(this.modeCookies[c])&&this.saleOut();
b||($.cookie(\"xm_diff_hd\")?(this.config.serverTime=this.localTime()+parseInt($.cookie(\"xm_diff_hd\"),10),this.config.serverTime>=parseInt(this.config.startDate/1e3,10)?$.cookie(\"xm_hd_so_phone\")&&$.cookie(\"xm_hd_so_box\")||this.getData(!0,function(){a.goBuy()}):this.launch()):this.getData())},getData:function(a,b){
varc=this,a=a||null;
b&&(b=b),
$.ajax({
url:\"http://tc.hd.xiaomi.com/hdget\",
dataType:\"jsonp\",
jsonpCallback:\"hdcontrol\",
timeout:7e3,
beforeSend:function(){
c.maskLoad.css(\"display\",\"block\")},
error:function(){
c.maskLoad.css(\"display\",\"none\"),
alert(\"服务器压力山大,请您重新刷新页面!\")
},
success:function(d){
if(c.maskLoad.css(\"display\",\"none\"),\"undefined\"==typeofd)
returnalert(\"服务器压力山大,请您重新刷新页面!\"),
void0;
if(c.results=d,a||(c.config.serverTime=c.results.stime),!$.cookie(\"xm_diff_hd\")){
vare=parseInt(c.config.serverTime-c.localTime(),10);
$.cookie(\"xm_diff_hd\",e,{
path:\"/\",
domain:\".xiaomi.com\",
expires:1
})
}
if(a){
c.initialData();
for(varfinc.mode)
if(c.config[f].hdstart===!1&&c.config[f].hdstop===!0){
varg=c.modeCookies[f];
$.cookie(g,1,{path:\"/\",domain:\".xiaomi.com\",expires:1}),
c.saleOut()
}elseb&&b.call()
}
a||c.launch()
}})},
initialData:function(){
this.config.allow=this.results.status.allow,
this.config.mibox=this.results.status.mibox,
this.config.miphone=this.results.status.miphone
},
launch:function(){
this.timeStart(),
this.countdown()
},
timeStart:function(){
vara=this,
b=1e3*a.config.serverTime,
c=a.config.startDate,
d=c-1e3*60*a.config.minSignTime;
b>=d&&c>b&&!isApp()?
$.cookie(\"userId\")?
($(\"#view_button\").css(\"visibility\",\"hidden\"),
$(\"#purchase_btn_1\").html(\'<aclass=\"btn_buy\"href=\"http://bbs.xiaomi.cn/thread-8205768-1-1.html\">活动详情</a>\'),
$(\"#purchase_btn_2\").html(\'<aclass=\"btn_buybtn_02\"href=\"javascript:;\">已经登录</a>\')):a.toLogin():b>=c&&a.toBuy()
},
toLogin:function(){
$(\"#view_button\").css(\"visibility\",\"hidden\"),
$(\"#purchase_btn_1\").html(\'<aclass=\"btn_buy\"href=\"http://bbs.xiaomi.cn/thread-8205768-1-1.html\">活动详情</a>\'),
$(\"#purchase_btn_2\").html(\'<aclass=\"btn_buybtn_02\"href=\"javascript:;\">提前登录</a>\'),
$(\"#purchase_btn_2\").find(\".btn_02\").on(\"click\",function(){
WebEventTrigger(\"login\",null)||(window.location.href=\"http://m.xiaomi.com/mshopapi/index.php/v1/authorize/sso?client_id=180100031013&callback=\"+encodeURIComponent(window.location.href))}
)},
countdown:function(){
vara=this,
b=null,
c=a.config.startDate;
b=a.config.serverTime?a.config.serverTime:parseInt(+newDate/1e3,10);
vard=c-1e3*60*a.config.minSignTime,
e=setInterval(function(){
varf=countdown(b,c);
f[1]?(clearInterval(e),$(\"#countdown\").css(\"display\",\"none\"),a.toBuy()):(1e3*b!=d||isApp()||($.cookie(\"userId\")?($(\"#view_button\").css(\"visibility\",\"hidden\"),
$(\"#purchase_btn_1\").html(\'<aclass=\"btn_buy\"href=\"http://bbs.xiaomi.cn/thread-8205768-1-1.html\">活动详情</a>\'),
$(\"#purchase_btn_2\").html(\'<aclass=\"btn_buy\"href=\"javascript:;\">已经登录</a>\')):a.toLogin()),b++),
$(\"#countdown\").html(f[0])},1e3)},
toBuy:function(){
vara=this;
a.goBuy();
varb=a.modeModals[a.config.mode];
$(b).find(\".close\").on(\"click\",function(){
$(b).css(\"display\",\"none\"),
window.clearTimeout(a.timer),
a.timer=null})},
saleOut:function(){
vara={miphone:\"#purchase_btn_2\",mibox:\"#purchase_btn_1\"},
b={miphone:\"http://t.hd.xiaomi.com/r/?_a=payment_check&_m=1\",mibox:\"http://m.xiaomi.com/index.html#ac=home&op=addcart&product_id=2505\"},
c={miphone:\"支付小米手机3\",mibox:\"支付小米电视\"};
for(vardinthis.mode)
$.cookie(this.modeCookies[d])&&($(a[d]).html(\'<aclass=\"btn_buy\"href=\"\'+b[d]+\'\">\'+c[d]+\"</a>\"),
$(this.modeModals[d]).is(\":visible\")&&$(this.modeModals[d]).find(\".close\").click())},
localTime:function(){
vara=parseInt(+newDate/1e3,10);
returna
},
toProcess:function(a){
varb=this,
c=b.timer,
d=b.timeCount||10,e=$(b.modeModals[a]).find(\".re_countdown\"),
f=$(b.modeModals[a]).find(\".modal_btn\"),
g=function(){0==d?(f.html(\'<aclass=\"into_buy_btn\"href=\"javascript:;\">进入活动</a>\'),
b.toBuyGo(b.config.mode),
c&&window.clearTimeout(c),
c=null):(e.html(\"(\"+d+\")\"),
d--,
b.timer=window.setTimeout(function(){g()},1e3))};
c&&window.clearTimeout(c),g()},
goBuy:function(){
vara=this,
b={miphone:\"购买小米手机3\",mibox:\"购买小米电视\"},
c={miphone:\"#purchase_btn_2\",mibox:\"#purchase_btn_1\"};
for(vardina.mode)
$.cookie(a.modeCookies[d])||($(c[d]).html(\'<aclass=\"btn_buybtn_buy_go\"data-type=\"\'+d+\'\"href=\"javascript:;\">\'+b[d]+\"</a>\"),
$(c[d]).is(\":hidden\")&&$(c[d]).css(\"display\",\"block\"));
$(\"#open_button\").find(\".btn_buy_go\").on(\"click\",function(){a.mode[$(this).attr(\"data-type\")]=!0;
varb=a.config.mode=$(this).attr(\"data-type\");
if($.cookie(\"userId\"))a.getData(!0,function(){
$(a.modeModals[b]).css(\"display\",\"block\"),
$(a.modeModals[b]).find(\".close\").on(\"click\",function(){
$(a.modeModals[b]).css(\"display\",\"none\"),window.clearTimeout(a.timer),a.timer=null}),a.toProcess(b)});
else{if(WebEventTrigger(\"login\",null))return;
window.location.href=\"http://m.xiaomi.com/mshopapi/index.php/v1/authorize/sso?client_id=180100031013&callback=\"+encodeURIComponent(window.location.href)}})},
toBuyGo:function(a){
varb=this;
window.clearTimeout(b.timer),
b.timer=null,
$(b.modeModals[a]).find(\".modal_btn\").find(\".into_buy_btn\").on(\"click\",function(c){c.preventDefault(),b.getData(!0,function(){
if($(b.modeModals[a]).css(\"display\",\"block\"),b.config.allow)if(b.config[a].hdurl){
varc=\"http://t.hd.xiaomi.com/s/\"+b.config[a].hdurl+\"&_m=1\";
window.setTimeout(function(){window.location.href=c},500)
}else{
vard=\"http://p.www.xiaomi.com/m/activities/open/\"+b.config.hdurl[a];
window.setTimeout(function(){window.location.href=d},500)
}elseif(
b.config[a].hdstart===!1&&b.config[a].hdstop===!0){
vard=\"http://p.www.xiaomi.com/m/activities/open/\"+b.config.hdurl[a];
window.setTimeout(function(){window.location.href=d},500)
}else$(b.modeModals[a]).find(\".modal_btn\").html(\'<aclass=\"re_enter\"href=\"javascript:;\">重新进入</a>\'),
b.toProcess(a)
})})}};

本文地址:https://www.stayed.cn/item/18424

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。