...
|
...
|
@@ -5,14 +5,33 @@ |
|
|
* @date: 2015/10/21
|
|
|
*/
|
|
|
|
|
|
var $ = require('jquery');
|
|
|
var $ = require('jquery'),
|
|
|
tip = require('../plugin/tip'),
|
|
|
loading = require('../plugin/loading');
|
|
|
|
|
|
// Handlebars = require('yoho.handlebars');
|
|
|
|
|
|
// var $page = $('.yoho-page');
|
|
|
|
|
|
var $num,
|
|
|
$chosed;
|
|
|
$chosed,
|
|
|
re = /\d+/,
|
|
|
leftNum,
|
|
|
$colorList = $('.color-list ul>li'),
|
|
|
$sizeList = $('.size-list ul>li'),
|
|
|
firstColorId = $colorList.eq(0).data('id'),
|
|
|
colorIndex;
|
|
|
|
|
|
//初始化购物车面板显示
|
|
|
$sizeList.each(function() {
|
|
|
colorIndex = $(this).data('colorid');
|
|
|
|
|
|
if (colorIndex === firstColorId) {
|
|
|
$(this).removeClass('hide');
|
|
|
}
|
|
|
});
|
|
|
|
|
|
// confirm;
|
|
|
|
|
|
// var tpl;
|
|
|
|
...
|
...
|
@@ -35,8 +54,11 @@ var $num, |
|
|
// $num = $('#good-num');
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
function show() {
|
|
|
$('.chose-panel').show();
|
|
|
|
|
|
$('body').css('overflow', 'hidden');
|
|
|
$num = $('#good-num');
|
|
|
}
|
...
|
...
|
@@ -58,10 +80,46 @@ $('.yoho-page').on('touchstart', '.chose-panel', function(e) { |
|
|
remove();
|
|
|
}).on('touchstart', '#chose-btn-sure', function() {
|
|
|
|
|
|
//确定
|
|
|
}).on('touchstart', '.block', function(e) {
|
|
|
var productSku,
|
|
|
buyNumber = $('#good-num') - 0;
|
|
|
|
|
|
//尺寸颜色点选
|
|
|
// promotionId,
|
|
|
// goodsType,
|
|
|
// isEdit;
|
|
|
|
|
|
$chosed = $('.block-list>ul>li.chosed');
|
|
|
|
|
|
if (2 === $chosed.length && 0 === $chosed.closest('.zero-stock').length) {
|
|
|
productSku = $sizeList.closest('.chosed').data('skuid');
|
|
|
|
|
|
// if (confirm) {
|
|
|
// return false;
|
|
|
// }
|
|
|
|
|
|
// confirm = true;
|
|
|
loading.showLoadingMask();
|
|
|
$.ajax({
|
|
|
method: 'POST',
|
|
|
url: '/cart/index/add',
|
|
|
data: {
|
|
|
productSku: productSku,
|
|
|
buyNumber: buyNumber
|
|
|
}
|
|
|
}).done(function(res) {
|
|
|
if (res.code === 200) {
|
|
|
loading.hideLoadingMask();
|
|
|
|
|
|
// confirm = false;
|
|
|
remove();
|
|
|
}
|
|
|
}).fail(function() {
|
|
|
tip.show('网络出了点问题~');
|
|
|
|
|
|
// confirm = false;
|
|
|
});
|
|
|
}
|
|
|
|
|
|
}).on('touchstart', '.block', function(e) {
|
|
|
var $this = $(this),
|
|
|
$that = $(e.target).closest('.chose-items'),
|
|
|
numArray,
|
...
|
...
|
@@ -69,7 +127,7 @@ $('.yoho-page').on('touchstart', '.chose-panel', function(e) { |
|
|
i;
|
|
|
|
|
|
var $siblingBlock = $this.closest('.block-list').siblings(':first'),
|
|
|
currentNumArray = $this.data('numstr').split('/');
|
|
|
currentNumArray = ($this.data('numstr') + '').split('/');
|
|
|
|
|
|
$this.siblings('.chosed').removeClass('chosed');
|
|
|
$this.toggleClass('chosed');
|
...
|
...
|
@@ -96,7 +154,20 @@ $('.yoho-page').on('touchstart', '.chose-panel', function(e) { |
|
|
}
|
|
|
});
|
|
|
} else if ($chosed.length === 1 && $this.hasClass('chosed')) {
|
|
|
numArray = $chosed.data('numstr').split('/');
|
|
|
if ($this.closest('.block-list').hasClass('color-list')) {
|
|
|
|
|
|
$sizeList.addClass('hide');
|
|
|
|
|
|
//切换尺码信息
|
|
|
$sizeList.each(function() {
|
|
|
colorIndex = $(this).data('colorid');
|
|
|
if (colorIndex === $this.data('id')) {
|
|
|
$(this).removeClass('hide');
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
|
|
|
numArray = ($chosed.data('numstr') + '').split('/');
|
|
|
$siblingBlock.find('.block').removeClass('zero-stock');
|
|
|
for (i = 0; i < numArray.length; i++) {
|
|
|
if (0 === numArray[i] - 0) {
|
...
|
...
|
@@ -104,6 +175,9 @@ $('.yoho-page').on('touchstart', '.chose-panel', function(e) { |
|
|
}
|
|
|
}
|
|
|
} else if ($chosed.length === 1 && !$this.hasClass('chosed')) {
|
|
|
$('#chose-btn-sure').css('background-color', '#eb0313');
|
|
|
$('#chose-btn-sure').html('确定');
|
|
|
|
|
|
$siblingBlock.find('ul>li').each(function() {
|
|
|
$(this).removeClass('zero-stock');
|
|
|
if (0 === $(this).data('num') - 0) {
|
...
|
...
|
@@ -123,19 +197,23 @@ $('.yoho-page').on('touchstart', '.chose-panel', function(e) { |
|
|
if (2 === $chosed.closest('.zero-stock').length) {
|
|
|
$('#chose-btn-sure').css('background-color', '#c0c0c0');
|
|
|
$('#chose-btn-sure').html('已售罄');
|
|
|
} else {
|
|
|
$('#chose-btn-sure').css('background-color', '#eb0313');
|
|
|
$('#chose-btn-sure').html('确定');
|
|
|
}
|
|
|
}
|
|
|
|
|
|
}).on('touchstart', '.btn-minus', function() {
|
|
|
var num = +$num.val(),
|
|
|
$chosed = $('.block-list>ul>li.chosed');
|
|
|
$chosed = $('.block-list>ul>li.chosed'),
|
|
|
leftNum = re.exec($('.num .left-num').html());
|
|
|
|
|
|
//若颜色和尺码没有被同时选中,则不能点击
|
|
|
if ($chosed.length < 2) {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
if (num === 0) {
|
|
|
if (num === 1 || 0 === leftNum - 0) {
|
|
|
return;
|
|
|
}
|
|
|
|
...
|
...
|
@@ -147,6 +225,10 @@ $('.yoho-page').on('touchstart', '.chose-panel', function(e) { |
|
|
if ($('.block-list>ul>li.chosed').length < 2) {
|
|
|
return;
|
|
|
}
|
|
|
leftNum = re.exec($('.num .left-num').html());
|
|
|
if (num - 0 === leftNum - 0 || 0 === leftNum - 0) {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
//TODO:库存数验证
|
|
|
$num.val(num + 1);
|
...
|
...
|
|