Toggle navigation
Toggle navigation
This project
Loading...
Sign in
fe
/
YOHOBUYPC
·
Commits
Go to a project
GitLab
Go to group
Project
Activity
Files
Commits
Pipelines
0
Builds
0
Graphs
Milestones
Issues
0
Merge Requests
2
Members
Labels
Wiki
Forks
Network
Create a new issue
Download as
Plain Diff
Browse Files
Authored by
hf
9 years ago
Commit
e9c438dc745653eb60dad7cfcc816f4305e13c4c
2 parents
c22c460b
a5f45334
Merge branch 'develop' of
http://git.dev.yoho.cn/web/yohobuy
into develop
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
86 additions
and
37 deletions
static/js/cart/chose-panel.js
static/sass/cart/_index.scss
template/m.yohobuy.com/partials/cart/cart-content.phtml
static/js/cart/chose-panel.js
View file @
e9c438d
...
...
@@ -18,9 +18,9 @@ var panelTmpl,
$chosePanel
=
$
(
'#chose-panel'
),
$num
,
$chosed
,
re
=
/
\d
+/
,
// re = /\d+/,
leftNum
,
$sizeList
,
confirming
,
hasChooseColor
=
false
,
hasChooseSize
=
false
,
...
...
@@ -61,6 +61,20 @@ function init() {
$curSizeRow
=
$firstRow
;
}
function
checkColorSizeNum
()
{
if
(
!
hasChooseColor
&&
!
hasChooseSize
)
{
tip
.
show
(
'请选择颜色和尺码~'
);
return
false
;
}
else
if
(
!
hasChooseColor
)
{
tip
.
show
(
'请选择颜色~'
);
return
false
;
}
else
if
(
!
hasChooseSize
)
{
tip
.
show
(
'请选择尺码~'
);
return
false
;
}
return
true
;
}
init
();
function
show
(
data
)
{
...
...
@@ -118,6 +132,7 @@ $('.color-list').on('touchstart', '.block', function(e) {
//颜色原来已经是勾选时,要清空剩余件数的提示
$that
.
find
(
'.num .left-num'
).
html
(
''
);
$
(
'#left-num'
).
val
(
0
);
hasChooseColor
=
false
;
// 当前颜色不是选中状态,选中时
...
...
@@ -131,15 +146,15 @@ $('.color-list').on('touchstart', '.block', function(e) {
//把当前选中颜色对应的尺码那一行显示出来
$sizeRowList
.
addClass
(
'hide'
);
$curSizeRow
.
toggleClass
(
'hide
'
);
$curSizeRow
.
removeClass
(
'hide'
).
addClass
(
'show
'
);
// 之前选中的尺码去掉勾选样式
if
(
$sizeChosed
)
{
if
(
$sizeChosed
.
length
>
0
)
{
$sizeChosed
.
removeClass
(
'chosed'
);
curSelectedSizeBlock
=
$curSizeRow
.
children
().
get
(
scindex
);
}
// 当前选中颜色对应的尺码行,其对应的尺码加上勾选样式 (前提是要判断下这个尺码是否存在)
curSelectedSizeBlock
=
$curSizeRow
.
children
().
get
(
scindex
);
if
(
curSelectedSizeBlock
)
{
curGoodNum
=
$
(
curSelectedSizeBlock
).
data
(
'num'
);
$
(
curSelectedSizeBlock
).
addClass
(
'chosed'
);
...
...
@@ -147,9 +162,11 @@ $('.color-list').on('touchstart', '.block', function(e) {
//如果当前有尺码被选中,且数量等于0,则颜色块添加数量为0的样式
if
(
curGoodNum
>
0
)
{
$that
.
find
(
'.num .left-num'
).
html
(
'剩余'
+
curGoodNum
+
'件'
);
$
(
'#left-num'
).
val
(
curGoodNum
);
}
else
{
$
(
curSelectedSizeBlock
).
removeClass
(
'zero-stock'
).
addClass
(
'zero-stock'
);
$that
.
find
(
'.num .left-num'
).
html
(
''
);
$
(
'#left-num'
).
val
(
0
);
}
}
}
...
...
@@ -236,7 +253,6 @@ $('.size-list').on('touchstart', '.block', function(e) {
$that
=
$
(
e
.
target
).
closest
(
'.chose-items'
),
index
,
$colorChosed
,
selectedColorindex
,
curGoodNum
;
var
$siblingBlock
=
$this
.
closest
(
'.block-list'
).
siblings
(
':first'
);
...
...
@@ -245,7 +261,6 @@ $('.size-list').on('touchstart', '.block', function(e) {
index
=
$this
.
index
();
$colorChosed
=
$siblingBlock
.
find
(
'.chosed'
);
selectedColorindex
=
$colorChosed
.
index
();
$curSizeRow
=
$sizeRowList
.
eq
(
index
);
// 当前尺码已经是选中状态,再点击时
...
...
@@ -253,10 +268,11 @@ $('.size-list').on('touchstart', '.block', function(e) {
//尺码原来已经是勾选时,要清空剩余件数的提示
$that
.
find
(
'.num .left-num'
).
html
(
''
);
$
(
'#left-num'
).
val
(
0
);
hasChooseSize
=
false
;
// 去掉已经选中颜色的 数量为0的样式
if
(
$colorChosed
)
{
if
(
$colorChosed
.
length
>
0
)
{
$colorChosed
.
removeClass
(
'zero-stock'
).
addClass
(
'zero-stock'
);
}
...
...
@@ -272,11 +288,13 @@ $('.size-list').on('touchstart', '.block', function(e) {
}
// 如果当前有尺码被选中,且数量等于0,则颜色块添加数量为0的样式, 否则显示剩余件数
if
(
curGoodNum
>
0
)
{
if
(
curGoodNum
>
0
&&
hasChooseColor
)
{
$that
.
find
(
'.num .left-num'
).
html
(
'剩余'
+
curGoodNum
+
'件'
);
$
(
'#left-num'
).
val
(
curGoodNum
);
}
else
{
$colorChosed
.
removeClass
(
'zero-stock'
).
addClass
(
'zero-stock'
);
$that
.
find
(
'.num .left-num'
).
html
(
''
);
$
(
'#left-num'
).
val
(
0
);
}
}
...
...
@@ -361,12 +379,11 @@ $('.size-list').on('touchstart', '.block', function(e) {
});
$
(
'.btn-minus'
).
on
(
'touchstart'
,
function
()
{
var
num
=
$num
.
val
(),
$chosed
=
$
(
'.block-list>ul>li.chosed'
),
leftNum
=
re
.
exec
(
$
(
'.num .left-num'
).
html
());
var
num
=
$num
.
val
();
leftNum
=
$
(
'#left-num'
).
val
();
//若颜色和尺码没有被同时选中,则不能点击
if
(
$chosed
.
length
<
2
)
{
if
(
!
checkColorSizeNum
())
{
return
;
}
...
...
@@ -380,13 +397,14 @@ $('.btn-minus').on('touchstart', function() {
$
(
'.btn-plus'
).
on
(
'touchstart'
,
function
()
{
var
num
=
$num
.
val
();
//若颜色和尺码没有被同时选中,则不能点击
if
(
$
(
'.block-list>ul>li.chosed'
).
length
<
2
)
{
tip
.
show
(
'请选择颜色和尺码~'
);
leftNum
=
$
(
'#left-num'
).
val
();
if
(
!
checkColorSizeNum
())
{
return
;
}
leftNum
=
re
.
exec
(
$
(
'.num .left-num'
).
html
());
if
(
num
-
0
===
leftNum
-
0
||
0
===
leftNum
-
0
)
{
if
(
num
-
0
===
leftNum
||
0
===
leftNum
)
{
return
;
}
...
...
@@ -394,22 +412,35 @@ $('.btn-plus').on('touchstart', function() {
$num
.
val
(
num
+
1
);
});
$
(
'#chose-btn-sure'
).
on
(
'touch
end
'
,
function
()
{
$
(
'#chose-btn-sure'
).
on
(
'touch
start
'
,
function
()
{
var
productSku
,
buyNumber
=
$
(
'#good-num'
).
val
()
-
0
,
promotionId
,
isEdit
=
0
,
numInCart
=
$
(
'.num-tag'
).
html
()
-
0
;
numInCart
=
$
(
'.num-tag'
).
html
()
-
0
,
num
=
$num
.
val
();
if
(
!
checkColorSizeNum
())
{
return
;
}
if
(
$
(
'#chose-btn-sure'
).
html
()
===
'已售罄'
)
{
return
;
}
leftNum
=
$
(
'#left-num'
).
val
();
// goodsType,
// isEdit;
if
(
num
>
leftNum
)
{
tip
.
show
(
'您选择的数量超过了最大库存量~'
);
return
;
}
$chosed
=
$
(
'.block-list>ul>li.chosed'
);
if
(
2
===
$chosed
.
length
&&
0
===
$chosed
.
closest
(
'.zero-stock'
).
length
)
{
productSku
=
$
sizeList
.
closest
(
'.chosed'
)
.
data
(
'skuid'
);
productSku
=
$
curSizeBlock
.
data
(
'skuid'
);
promotionId
=
$
(
'[data-id="'
+
productSku
+
'"]'
).
closest
(
'.advance-block'
).
data
(
'promotion-id'
);
if
(
confirming
)
{
return
false
;
...
...
static/sass/cart/_index.scss
View file @
e9c438d
...
...
@@ -116,11 +116,26 @@
color
:
#8f8f8f
;
}
}
.price-compute
{
.activity
{
padding
:
20rem
/
$pxConvertRem
;
border-bottom
:
1px
solid
#e0e0e0
;
font-size
:
26rem
/
$pxConvertRem
;
h1
{
font-size
:
32rem
/
$pxConvertRem
;
}
li
:before
{
content
:
""
;
display
:
inline-block
;
width
:
4px
;
height
:
4px
;
background-color
:
#000
;
border-radius
:
50%
;
margin-right
:
8rem
/
$pxConvertRem
;
}
}
.price-compute
{
padding
:
20rem
/
$pxConvertRem
;
border-top
:
1px
solid
#e0e0e0
;
font-size
:
28rem
/
$pxConvertRem
;
.title
{
display
:
inline-block
;
...
...
template/m.yohobuy.com/partials/cart/cart-content.phtml
View file @
e9c438d
...
...
@@ -33,18 +33,21 @@
{{/if}}
</ul>
{{/if}}
<div class="activity">
<h1>以参与活动</h1>
<ul>
{{# promotionInfo}}
<li>{{name}}</li>
{{/ promotionInfo}}
</ul>
</div>
<div class="price-compute">
<p class="sum-price">
<span class="title">总价</span>
<span id="good-totalprice">¥{{price}}</span>
<p>
<span>总价(¥{{price}})<i>-</i></span>
<span>活动价(¥{{activityPrice}})</span>
</p>
<p class="activity-price">
<span class="title">
活动价
<i class="minus">-</i>
</span>
<span id="good-activityPrice">¥{{activityPrice}}</span>
<p>
<span><i>=</i>商品总计金额 (¥{{sumPrice}})</span>
</p>
</div>
...
...
Please
register
or
login
to post a comment