seckill-detail.page.js 12.9 KB
$(window).on('seckill', function() {
    $('.btn-c').before('<a href="https://union.yoho.cn/union/app-downloads.html" class="seckill-download-app">下载APP购买</a>');
    $('.btn-c').remove();
});

// 调用秒杀js
// $(window).on('seckill', function(event, detailData) {

//     /**
//     * [秒抢页面js]
//     * author: 李靖<jing.li@yoho.cn>
//     * date: 2016/09/08
//     */

//     let $ = require('yoho-jquery'),
//         tip = require('plugin/tip');

//     let seckillObj = {};

//     let offsetTime = 0;

//     let nowTime = 0;

//     let startTime = 0;

//     let endTime = 0,
//         diffTime = 0; // 误差时间

//     let dateText = 0,
//         newDate = 0,
//         newMonth = 0,
//         newDay = 0,
//         newHour = 0,
//         newMinus = 0;


//     let secKillPrice = 0;

//     // 隐藏折扣信息
//     $('.good-detail-page').addClass('hide-discount');

//     require('common');

//     seckillObj = {
//         el: {
//             iScroll: null,
//             currentTick: null
//         },

//         startTick: function(status, offTime) {
//             let that = this,
//                 $el = this.el,
//                 day = parseInt(offTime / (60 * 60 * 24), 10),
//                 hour = parseInt(offTime % (60 * 60 * 24) / (60 * 60), 10),
//                 minute = parseInt(offTime % (60 * 60) / 60, 10),
//                 second = offTime % 60;

//             let $elem = status === 0 ? $('.seckill-count-num') : $('.end-time');

//             if (offTime >= -1) {
//                 if (day <= 0) {
//                     $('.day-c').addClass('hide');
//                 }
//                 $elem.find('.tick.day').text(that.formatNumber(day));
//                 $elem.find('.tick.hour').text(that.formatNumber(hour));
//                 $elem.find('.tick.minute').text(that.formatNumber(minute));
//                 $elem.find('.tick.second').text(that.formatNumber(second));

//                 if (offTime <= -1) { // 结束倒计时刷新状态
//                     window.location.reload();
//                 } else {
//                     $el.currentTick = setTimeout(function() {
//                         that.startTick(status, --offTime);
//                     }, 1000);
//                 }
//             }

//         },
//         formatNumber: (number) => {
//             if (number < 0) {
//                 return '00';
//             } else if (number < 10) {
//                 return '0' + number;
//             } else {
//                 return number;
//             }
//         },
//     };

//     $(
//         function() {
//             $('#goodsDiscount').hide(); // 隐藏折扣楼层
//             $('.cart-bar').hide();
//             $('.current-price').hide();
//             let ajaxUrl = '/product/seckillDetail/seckillData/' + $('#productSkn').val();
//             let timestamp = Date.parse(new Date());

//             $.ajax({
//                 type: 'GET',
//                 url: ajaxUrl + '?tamp=' + timestamp,
//                 success: function(data) {

//                     // 秒杀是否结束
//                     if (data === '' || data.status === 0 || data.status === 3) {
//                         window.location.replace('/product/' + $('#productSkn').val() + '.html'); // 商品url改版

//                         // $('.sold-out').hide();
//                         // $('.cart-bar a:first').append('<a href="javascript:;" class="sold-out">已售罄</a>');
//                         // $('.addto-cart').hide();
//                         // $('.cart-bar').show();
//                         // $('.current-price').show();
//                     } else {

//                         // 秒杀开始前
//                         if (data.status === 1) {
//                             $('.cart-bar').before(
//                                 '<div class="seckill-count">' +
//                                 '<div class="seckill-count-bg"></div>' +
//                                 '<div class="seckill-count-num">距秒杀开始:' +
//                                 '<span class="day-c"><i class="tick day">00</i>天</span>' +
//                                 '<i class="tick hour">00</i>时' +
//                                 '<i class="tick minute">00</i>分' +
//                                 '<i class="tick second">00</i>秒' +
//                                 '</div>' +
//                                 '</div>'
//                             );
//                             $('.current-price').text('¥' + data.secKillPrice).show();
//                             $('.price-date').eq(0).append(
//                                 '<div class="seckill-time notStart">' +
//                                 '<span class="seckill-time-pic">秒杀预告</span>' +
//                                 '<span class="seckill-time-c">月日</span>' +
//                                 '</div>'
//                             );
//                             $('.sold-out').hide();
//                             $('.btn-c').append('<a href="javascript:;" class="sold-out">即将开抢</a>');
//                             $('.addto-cart').hide();
//                             $('.cart-bar').show();
//                             $('.current-price').show();
//                             timeInit(data); // eslint-disable-line
//                         }

//                         // 秒杀进行中
//                         if (data.status === 2) {
//                             $('#addtoCart').off('touchstart');

//                             // 插入倒计时
//                             addTimeout($('.price-date').eq(0)); // eslint-disable-line

//                             let chosePanel = require('common/chose-panel-new');
//                             let seckillData = data.secKillSku;

//                             detailData.cartInfo.skus.forEach(
//                                 function(val) {
//                                     seckillData.forEach(
//                                         function(item) {
//                                             if (val.skuId === item.productSku) {
//                                                 val.storage = item.storageNum;
//                                             }
//                                         }
//                                     );
//                                 }
//                             );

//                             $('#addtoCart').on('touchstart', function() {
//                                 $('.cart-bar').hide();
//                                 chosePanel.show({
//                                     data: detailData,
//                                     disableNum: true
//                                 }).then(result => {
//                                     $('.cart-bar').show();
//                                     if (result && result.sku) {
//                                         window.location.href = '/cart/index/seckill?skn=' +
//                                             $('#productSkn').val() + '&sku=' + result.sku.skuId;
//                                     }
//                                 }, () => {
//                                     $('.cart-bar').show();
//                                 });
//                                 $('.text-info').append($('.seckill-time').clone());
//                                 $('.chose-items .num').find('.clearfix').append(
//                                     '<span class="limit-num-text">限购1件</span>'
//                                 );
//                                 $('.sale-price').text('¥' + secKillPrice).show();
//                                 return false;
//                             });


//                             secKillPrice = toDecimal2(data.secKillPrice); // eslint-disable-line
//                             $('.current-price').text('¥' + secKillPrice).show();
//                             $('.left-num').hide();
//                             $('.btn-plus').removeClass('btn-plus');
//                             $('.addto-cart').text('立即购买');
//                             $('#chose-btn-sure').text('立即购买').addClass('isSecKill');
//                             $('.cart-bar').show();
//                             let seckillNum = 0;

//                             for (let i = 0; i < data.secKillSku.length; i++) {
//                                 seckillNum = seckillNum + data.secKillSku[i].storageNum;
//                             }
//                             if (seckillNum === 0) {
//                                 $('.sold-out').hide();
//                                 $('.btn-c').append('<a href="javascript:;" class="sold-out">已售罄</a>');
//                                 $('.addto-cart').hide();
//                             }
//                             $('.current-price').show();
//                             timeInit(data); // eslint-disable-line
//                         }

//                     }
//                 },
//                 error: function() {
//                     tip.show('网络异常~');
//                 }
//             });

//         }
//     );

//     // function seckHide() {
//     //     $('.chose-panel .size-list ul').each(
//     //         function() {
//     //             hideNum = 0;
//     //             $(this).find('li').each(
//     //                 function() {
//     //                     if ($(this).hasClass('hide')) {
//     //                         oneIndex = $(this).index() + 1;
//     //                         twoIndex = $(this).parent('ul').index() - 2;
//     //                         $('.color-list ul:eq(' + oneIndex + ') li:eq(' + twoIndex + ')').hide();
//     //                     } else {
//     //                         hideNum++;
//     //                     }
//     //                 }
//     //             );
//     //             if (hideNum === 0) {
//     //                 hideIndex = $(this).index() - 2;
//     //                 $('.color-list ul:first li:eq(' + hideIndex + ')').hide();
//     //             }
//     //         }
//     //     );

//     //     $('.chose-panel .color-list ul').each(
//     //         function() {
//     //             hideNum = 0;
//     //             $(this).find('li').each(
//     //                 function() {
//     //                     if ($(this).hasClass('hide')) {
//     //                         oneIndex = $(this).index() + 1;
//     //                         twoIndex = $(this).parent('ul').index() - 2;
//     //                         $('.size-list ul:eq(' + oneIndex + ') li:eq(' + twoIndex + ')').hide();
//     //                     } else {
//     //                         hideNum++;
//     //                     }
//     //                 }
//     //             );
//     //             if (hideNum === 0) {
//     //                 hideIndex = $(this).index() - 2;
//     //                 $('.size-list ul:first li:eq(' + hideIndex + ')').hide();
//     //             }
//     //         }
//     //     );
//     // }

//     function addTimeout(obj) {
//         obj.append(
//             '<div class="seckill-time seckill-time-border">' +
//             '<span>距结束&nbsp</span>' +
//             '<span class="end-time">' +
//             '<i class="tick day hide">00</i>' +
//             '<i class="tick hour">00</i>:' +
//             '<i class="tick minute">00</i>:' +
//             '<i class="tick second">00</i>' +
//             '</span>' +
//             '</div>'
//         );
//     }

//     // 强制保留2位小数点
//     function toDecimal2(num) {
//         let f = parseFloat(num);

//         if (isNaN(f)) {
//             return false;
//         }
//         f = Math.round(num * 100) / 100;
//         let s = f.toString();
//         let rs = s.indexOf('.');

//         if (rs < 0) {
//             rs = s.length;
//             s += '.';
//         }
//         while (s.length <= rs + 2) {
//             s += '0';
//         }
//         return s;
//     }

//     function timeInit(data) {
//         let status = 0;

//         startTime = data.startTime;
//         endTime = data.endTime;
//         diffTime = data.currentTime;
//         nowTime = diffTime;
//         if (startTime > nowTime) {
//             offsetTime = startTime - nowTime;
//         } else if (nowTime > startTime && nowTime < endTime) {
//             offsetTime = endTime - nowTime;
//             status = 1;
//         }

//         dateText = Number(data.startTime * 1000);
//         newDate = new Date(dateText);
//         newMonth = newDate.getMonth() + 1;
//         newDay = newDate.getDate();
//         newHour = newDate.getHours();
//         newMinus = newDate.getMinutes();
//         if (newMinus === 0) {
//             newMinus = '00';
//         }
//         $('.notStart').find('.seckill-time-c').text(newMonth + '月' + newDay + '日' + newHour + ':' + newMinus);
//         seckillObj.startTick(status, offsetTime);
//     }
// });

// 调用新商品详情页js
require('./new-detail');