...
|
...
|
@@ -33,7 +33,7 @@ var thumbsLoaded = {}; |
|
|
var $main = $('.main'),
|
|
|
id = $main.data('id');
|
|
|
|
|
|
var maxStock = -1; //记录当前选中的颜色-尺码的库存量,若为-1,代表未选择尺码
|
|
|
var maxStock = -1; // 记录当前选中的颜色-尺码的库存量,若为-1,代表未选择尺码
|
|
|
|
|
|
var SLIDETIME = 200;
|
|
|
|
...
|
...
|
@@ -61,14 +61,14 @@ function getNum() { |
|
|
return +$num.text();
|
|
|
}
|
|
|
|
|
|
//重置Num显示为1
|
|
|
// 重置Num显示为1
|
|
|
function resetNum() {
|
|
|
$num.text('1');
|
|
|
|
|
|
//+-按钮状态重置
|
|
|
// +-按钮状态重置
|
|
|
if (maxStock === 1 || maxStock === 0) {
|
|
|
|
|
|
//数目为1/0时
|
|
|
// 数目为1/0时
|
|
|
$plusNum.addClass('dis');
|
|
|
$minusNum.addClass('dis');
|
|
|
} else {
|
...
|
...
|
@@ -77,32 +77,32 @@ function resetNum() { |
|
|
}
|
|
|
}
|
|
|
|
|
|
//加入购物车和已售罄状态控制
|
|
|
// 加入购物车和已售罄状态控制
|
|
|
function switchBtnStatus($color) {
|
|
|
if ($itemBuy.length === 0) {
|
|
|
|
|
|
//全部售罄,按钮状态不变
|
|
|
// 全部售罄,按钮状态不变
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
//选中的商品存量为0或者某个颜色的total为0
|
|
|
// 选中的商品存量为0或者某个颜色的total为0
|
|
|
if (maxStock === 0 || ($color && ~~$color.data('total') === 0)) {
|
|
|
$itemBuy.addClass('hide'); //隐藏加入购物车、即将开始、立即购买等相同位置的按钮
|
|
|
$itemBuy.addClass('hide'); // 隐藏加入购物车、即将开始、立即购买等相同位置的按钮
|
|
|
$soldOut.removeClass('hide');
|
|
|
} else {
|
|
|
|
|
|
//包括默认的-1情况下
|
|
|
// 包括默认的-1情况下
|
|
|
$itemBuy.removeClass('hide');
|
|
|
$soldOut.addClass('hide');
|
|
|
}
|
|
|
}
|
|
|
|
|
|
//size warn
|
|
|
// size warn
|
|
|
function showSizeWarn() {
|
|
|
$sizes.not('.hide').children('.size-warn').removeClass('hide');
|
|
|
}
|
|
|
|
|
|
//size title
|
|
|
// size title
|
|
|
(function() {
|
|
|
var $sizeTitleJson = $('#size-title-json'),
|
|
|
jsonHtml = $sizeTitleJson.html(),
|
...
|
...
|
@@ -114,7 +114,7 @@ function showSizeWarn() { |
|
|
|
|
|
sizeTitle = $.parseJSON(jsonHtml);
|
|
|
|
|
|
//数据获取后删除
|
|
|
// 数据获取后删除
|
|
|
$sizeTitleJson.remove();
|
|
|
|
|
|
$sizes.children('li').each(function() {
|
...
|
...
|
@@ -125,10 +125,10 @@ function showSizeWarn() { |
|
|
});
|
|
|
}());
|
|
|
|
|
|
//初始化thumbsLoaded
|
|
|
// 初始化thumbsLoaded
|
|
|
thumbsLoaded[$('.colors .focus').index()] = true;
|
|
|
|
|
|
//品牌收藏
|
|
|
// 品牌收藏
|
|
|
$('#brand-favour').click(function() {
|
|
|
var $this = $(this);
|
|
|
|
...
|
...
|
@@ -147,38 +147,38 @@ $('#brand-favour').click(function() { |
|
|
});
|
|
|
});
|
|
|
|
|
|
//颜色
|
|
|
// 颜色
|
|
|
$('.colors').on('click', 'li', function() {
|
|
|
var $this = $(this),
|
|
|
index = $this.index();
|
|
|
|
|
|
var $imgs;
|
|
|
|
|
|
//初始化color-size显示或隐藏
|
|
|
// 初始化color-size显示或隐藏
|
|
|
$colorSizeTip.addClass('hide');
|
|
|
|
|
|
//隐藏尺码提示
|
|
|
// 隐藏尺码提示
|
|
|
$sizeWarn.addClass('hide');
|
|
|
|
|
|
maxStock = -1;
|
|
|
|
|
|
if ($this.hasClass('focus')) {
|
|
|
|
|
|
//已获取焦点的颜色再次点击,清除尺码的选中
|
|
|
// 已获取焦点的颜色再次点击,清除尺码的选中
|
|
|
$sizes.eq(index).children('li').removeClass('focus');
|
|
|
} else {
|
|
|
|
|
|
//未获取焦点,选择尺码
|
|
|
// 未获取焦点,选择尺码
|
|
|
$this.siblings('.focus').removeClass('focus');
|
|
|
$this.addClass('focus');
|
|
|
|
|
|
//切换图片显示
|
|
|
// 切换图片显示
|
|
|
$thumbs.not('.hide').addClass('hide');
|
|
|
$imgs = $thumbs.eq(index).removeClass('hide').find('img');
|
|
|
|
|
|
if (typeof thumbsLoaded[index] === 'undefined') {
|
|
|
|
|
|
//trigger layLoad
|
|
|
// trigger layLoad
|
|
|
lazyLoad($imgs, {
|
|
|
event: 'sporty'
|
|
|
});
|
...
|
...
|
@@ -190,10 +190,10 @@ $('.colors').on('click', 'li', function() { |
|
|
|
|
|
imgShow($imgs.first().data('shower'));
|
|
|
|
|
|
//切换详细信息的颜色显示
|
|
|
// 切换详细信息的颜色显示
|
|
|
$descColor.text($this.data('color'));
|
|
|
|
|
|
//切换尺码显示
|
|
|
// 切换尺码显示
|
|
|
$sizes.not('.hide').addClass('hide').children('li').removeClass('focus');
|
|
|
$sizes.eq(index).removeClass('hide');
|
|
|
}
|
...
|
...
|
@@ -202,12 +202,12 @@ $('.colors').on('click', 'li', function() { |
|
|
switchBtnStatus($this);
|
|
|
});
|
|
|
|
|
|
//缩略图鼠标移入显示
|
|
|
// 缩略图鼠标移入显示
|
|
|
$('#thumbs').on('mouseenter', '.thumb', function() {
|
|
|
imgShow($(this).data('shower'));
|
|
|
});
|
|
|
|
|
|
//尺码
|
|
|
// 尺码
|
|
|
$size.on('click', 'li', function() {
|
|
|
var $this = $(this);
|
|
|
|
...
|
...
|
@@ -229,14 +229,14 @@ $size.on('click', 'li', function() { |
|
|
resetNum();
|
|
|
}).on('click', '.size-ruler', function() {
|
|
|
|
|
|
//尺码帮助
|
|
|
// 尺码帮助
|
|
|
|
|
|
$('body,html').animate({
|
|
|
scrollTop: $('.size-info').offset().top
|
|
|
}, 300);
|
|
|
});
|
|
|
|
|
|
//数量
|
|
|
// 数量
|
|
|
$plusNum.click(function() {
|
|
|
var num = getNum();
|
|
|
|
...
|
...
|
@@ -245,22 +245,22 @@ $plusNum.click(function() { |
|
|
}
|
|
|
|
|
|
if (maxStock === -1) {
|
|
|
showSizeWarn();//显示选择尺码提示
|
|
|
showSizeWarn();// 显示选择尺码提示
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
//已售罄
|
|
|
// 已售罄
|
|
|
if (maxStock === 0) {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
if (num === maxStock - 1) {
|
|
|
|
|
|
//+按钮不可点
|
|
|
// +按钮不可点
|
|
|
$(this).addClass('dis');
|
|
|
}
|
|
|
|
|
|
//数目为1时点+则移除-不可点状态
|
|
|
// 数目为1时点+则移除-不可点状态
|
|
|
if (num === 1) {
|
|
|
$minusNum.removeClass('dis');
|
|
|
}
|
...
|
...
|
@@ -283,7 +283,7 @@ $minusNum.click(function() { |
|
|
|
|
|
if (num === maxStock) {
|
|
|
|
|
|
//恢复+可点
|
|
|
// 恢复+可点
|
|
|
$plusNum.removeClass('dis');
|
|
|
}
|
|
|
|
...
|
...
|
@@ -292,14 +292,14 @@ $minusNum.click(function() { |
|
|
return false;
|
|
|
});
|
|
|
|
|
|
//限购码
|
|
|
// 限购码
|
|
|
$('.get-lc:not(.dis)').hover(function() {
|
|
|
$lcContainer.removeClass('hide');
|
|
|
}, function() {
|
|
|
$lcContainer.addClass('hide');
|
|
|
});
|
|
|
|
|
|
//加入购物车
|
|
|
// 加入购物车
|
|
|
$addToCart.click(function() {
|
|
|
if (maxStock === -1) {
|
|
|
showSizeWarn();
|
...
|
...
|
@@ -320,12 +320,12 @@ $addToCart.click(function() { |
|
|
$('#type-chose').slideUp(SLIDETIME);
|
|
|
$('#balance').slideDown(SLIDETIME);
|
|
|
|
|
|
$('#cart-num').text(data.data.goods_count); //更新数目
|
|
|
$('#cart-num').text(data.data.goods_count); // 更新数目
|
|
|
}
|
|
|
});
|
|
|
});
|
|
|
|
|
|
//收藏
|
|
|
// 收藏
|
|
|
$('#collect-product').click(function() {
|
|
|
var $this = $(this),
|
|
|
cancel;
|
...
|
...
|
@@ -371,13 +371,13 @@ $('#collect-product').click(function() { |
|
|
}
|
|
|
});
|
|
|
|
|
|
//继续购物
|
|
|
// 继续购物
|
|
|
$('#keep-shopping').click(function() {
|
|
|
$('#type-chose').slideDown(SLIDETIME);
|
|
|
$('#balance').slideUp(SLIDETIME);
|
|
|
});
|
|
|
|
|
|
//立即购买
|
|
|
// 立即购买
|
|
|
$('#buy-now').click(function() {
|
|
|
var sku,
|
|
|
base,
|
...
|
...
|
@@ -394,7 +394,7 @@ $('#buy-now').click(function() { |
|
|
|
|
|
base = $(this).data('base');
|
|
|
|
|
|
//潮流尖货
|
|
|
// 潮流尖货
|
|
|
if (!base) {
|
|
|
myAlert = new Alert('打开APP可抢购该商品哦~~');
|
|
|
myAlert.show();
|
...
|
...
|
@@ -408,7 +408,7 @@ $('#buy-now').click(function() { |
|
|
}
|
|
|
});
|
|
|
|
|
|
//按钮鼠标移入效果【dis状态的按钮状态不变】
|
|
|
// 按钮鼠标移入效果【dis状态的按钮状态不变】
|
|
|
$('.buy-btn').mouseover(function() {
|
|
|
if ($(this).hasClass('dis')) {
|
|
|
return;
|
...
|
...
|
@@ -419,7 +419,7 @@ $('.buy-btn').mouseover(function() { |
|
|
$(this).removeClass('hover');
|
|
|
});
|
|
|
|
|
|
//商品详情/材质洗涤切换
|
|
|
// 商品详情/材质洗涤切换
|
|
|
$('.description-material').on('click', '.title', function() {
|
|
|
var $this = $(this),
|
|
|
index = $this.index();
|
...
|
...
|
@@ -436,7 +436,7 @@ $('.description-material').on('click', '.title', function() { |
|
|
|
|
|
if (index === 0) {
|
|
|
|
|
|
//商品信息
|
|
|
// 商品信息
|
|
|
$description.slideDown(SLIDETIME);
|
|
|
$material.slideUp(SLIDETIME);
|
|
|
} else {
|
...
|
...
|
@@ -445,7 +445,7 @@ $('.description-material').on('click', '.title', function() { |
|
|
}
|
|
|
});
|
|
|
|
|
|
//售后服务
|
|
|
// 售后服务
|
|
|
$('.after-service-switch').click(function() {
|
|
|
var $this = $(this),
|
|
|
$content = $this.next('.after-service-content');
|
...
|
...
|
@@ -467,7 +467,7 @@ $('.after-service-switch').click(function() { |
|
|
});
|
|
|
|
|
|
|
|
|
//商品详情区的热点
|
|
|
// 商品详情区的热点
|
|
|
$.ajax({
|
|
|
type: 'GET',
|
|
|
url: '/product/item/hotarea',
|
...
|
...
|
@@ -477,12 +477,12 @@ $.ajax({ |
|
|
}).then(function(html) {
|
|
|
$('#details-html').prepend(html);
|
|
|
|
|
|
//修正热区尺寸使居中
|
|
|
// 修正热区尺寸使居中
|
|
|
$('.hot-point-wrap > img').load(function() {
|
|
|
$(this).parent('.hot-point-wrap').width($(this).width());
|
|
|
});
|
|
|
|
|
|
//Bind Hover event
|
|
|
// Bind Hover event
|
|
|
$('.hot-point').hover(function() {
|
|
|
$(this).addClass('hover');
|
|
|
}, function() {
|
...
|
...
|
@@ -490,10 +490,10 @@ $.ajax({ |
|
|
});
|
|
|
});
|
|
|
|
|
|
//商品详情懒加载
|
|
|
// 商品详情懒加载
|
|
|
lazyLoad($('#details-html img'));
|
|
|
|
|
|
//只有一个尺码(多个或一个颜色)时默认选中第一个未售罄的颜色的第一个尺码
|
|
|
// 只有一个尺码(多个或一个颜色)时默认选中第一个未售罄的颜色的第一个尺码
|
|
|
(function() {
|
|
|
var hasOnlyOneSize = true,
|
|
|
i;
|
...
|
...
|
@@ -510,7 +510,7 @@ lazyLoad($('#details-html img')); |
|
|
}
|
|
|
}());
|
|
|
|
|
|
//咨询和评价
|
|
|
// 咨询和评价
|
|
|
(function() {
|
|
|
var commentPage = 1,
|
|
|
consultPage = 1;
|
...
|
...
|
@@ -527,7 +527,7 @@ lazyLoad($('#details-html img')); |
|
|
var loadingComments,
|
|
|
loadingConsults;
|
|
|
|
|
|
//购买评价
|
|
|
// 购买评价
|
|
|
function loadComments() {
|
|
|
if (loadingComments) {
|
|
|
return;
|
...
|
...
|
@@ -552,7 +552,7 @@ lazyLoad($('#details-html img')); |
|
|
return;
|
|
|
}
|
|
|
|
|
|
//更新总数显示
|
|
|
// 更新总数显示
|
|
|
$commentNum.text(res[0].total);
|
|
|
|
|
|
$commentsUl.append(commentsTpl({
|
...
|
...
|
@@ -565,7 +565,7 @@ lazyLoad($('#details-html img')); |
|
|
});
|
|
|
}
|
|
|
|
|
|
//顾客咨询
|
|
|
// 顾客咨询
|
|
|
function loadConsults() {
|
|
|
if (loadingConsults) {
|
|
|
return;
|
...
|
...
|
@@ -591,7 +591,7 @@ lazyLoad($('#details-html img')); |
|
|
return;
|
|
|
}
|
|
|
|
|
|
//更新总数显示
|
|
|
// 更新总数显示
|
|
|
$consultNum.text(res[0].total);
|
|
|
|
|
|
$consultsUl.append(consultsTpl({
|
...
|
...
|
@@ -604,7 +604,7 @@ lazyLoad($('#details-html img')); |
|
|
});
|
|
|
}
|
|
|
|
|
|
//评价和咨询切换
|
|
|
// 评价和咨询切换
|
|
|
$('.consult-comment').on('click', '.title', function() {
|
|
|
var $this = $(this),
|
|
|
index = $this.index();
|
...
|
...
|
@@ -621,7 +621,7 @@ lazyLoad($('#details-html img')); |
|
|
|
|
|
if (index === 0) {
|
|
|
|
|
|
//咨询
|
|
|
// 咨询
|
|
|
$consults.slideDown(SLIDETIME);
|
|
|
$comments.slideUp(SLIDETIME);
|
|
|
} else {
|
...
|
...
|
@@ -638,15 +638,15 @@ lazyLoad($('#details-html img')); |
|
|
}
|
|
|
});
|
|
|
|
|
|
//我要咨询
|
|
|
// 我要咨询
|
|
|
$('#consults-btn').click(function() {
|
|
|
|
|
|
//TODO:点击我要资讯的时候更新验证码显示
|
|
|
// TODO:点击我要资讯的时候更新验证码显示
|
|
|
$('.new-consult').removeClass('hide');
|
|
|
$('.consult-success').addClass('hide');
|
|
|
});
|
|
|
|
|
|
//提交咨询
|
|
|
// 提交咨询
|
|
|
$('#submit-consult').click(function() {
|
|
|
var $this = $(this),
|
|
|
$parent = $this.closest('.new-consult'),
|
...
|
...
|
@@ -686,11 +686,11 @@ lazyLoad($('#details-html img')); |
|
|
|
|
|
$parent.siblings('.consult-success').removeClass('hide');
|
|
|
|
|
|
//清空输入
|
|
|
// 清空输入
|
|
|
$textarea.val('');
|
|
|
} else if (code === 403) {
|
|
|
|
|
|
//跳转登录页
|
|
|
// 跳转登录页
|
|
|
location.href = data.data.url;
|
|
|
}
|
|
|
});
|
...
|
...
|
|