Authored by uedxwg

Merge branch 'develop' of http://git.dev.yoho.cn/web/yohobuy into develop

... ... @@ -6,7 +6,10 @@
var $ = require('jquery'),
Swiper = require('yoho.iswiper'),
lazyLoad = require('yoho.lazyload'),
goodsSwiper;
goodsSwiper,
sizeSwiper,
refSwiper;
lazyLoad($('img.lazy'));
... ... @@ -39,6 +42,14 @@ $('#nav-tab li').on('click', function() {
}
});
sizeSwiper = new Swiper('#size-swiper-container',{
slidesPerView: 'auto'
});
refSwiper = new Swiper('#reference-swiper-container',{
slidesPerView: 'auto'
});
// $('#iframe').load(function() {
// var mainheight = $(this).contents().find('body').height() + 30;
// $(this).height(mainheight);
... ...
$mainFontC:#444444;
$subFontC:#b0b0b0;
$borderC:#e0e0e0;
$borderC:#b0b0b0;
$tableCellC:#eee;
@function px2rem($px){
@return $px*1rem/$pxConvertRem;
}
.good-detail-page {
/* basic component */
.page-block{
box-sizing:border-box;
width: 100%;
border-bottom: 1px solid $borderC;
border-top: 1px solid $borderC;
padding: 0 px2rem(28);
border-bottom: 2px solid $borderC;
border-top: 2px solid $borderC;
padding: 0 pxToRem(28px);
.title{
min-height: px2rem(88);
line-height: px2rem(88);
min-height: pxToRem(88px);
line-height: pxToRem(88px);
color: $mainFontC;
font:{
size : px2rem(28);
}
border-bottom: 1px solid $borderC;
font-size : pxToRem(28px);
border-bottom: 2px solid $borderC;
span{
color:#a0a0a0;
font:{
size:px2rem(18);
}
font-size:pxToRem(18px);
// vertical-align: baseline;
}
}
.detail{
margin-top: px2rem(20);
margin-bottom: px2rem(20);
table {
margin-top: pxToRem(20px);
margin-bottom: pxToRem(20px);
font-size: pxToRem(24px);
line-height: pxToRem(36px);
&.table{
display: table;
width: 100%;
tbody td{
.row{
display: table-row;
.column{
display: table-cell;
padding: 0.4em 0.8em;
border:3px solid white;
font-size: px2rem(24);
border:2px solid white;
font-size: pxToRem(24px);
background-color: $tableCellC;
}
}
}
// table {
// width: 100%;
// tbody td{
// padding: 0.4em 0.8em;
// border:3px solid white;
// font-size: pxToRem(24px);
// background-color: $tableCellC;
// }
// }
}
}
.gap-block{
min-height: 30rem/$pxConvertRem;
... ... @@ -57,15 +67,15 @@ $tableCellC:#eee;
// overflow: hidden;
.is-new-lable{
position: absolute;
left: px2rem(108);
top:px2rem(40);
height: px2rem(35);
width:px2rem(70);
left: pxToRem(108px);
top:pxToRem(40px);
height: pxToRem(35px);
width:pxToRem(70px);
color:#fff;
text-align: center;
font-size: px2rem(20);
line-height: px2rem(35);
font-size: pxToRem(20px);
line-height: pxToRem(35px);
background-color: #7cd881;
z-index: 16;
}
... ... @@ -78,7 +88,7 @@ $tableCellC:#eee;
.swiper-pagination{
position:absolute;
bottom: px2rem(40);
bottom: pxToRem(40px);
.swiper-pagination-bullet {
margin-right: 2px;
}
... ... @@ -90,9 +100,9 @@ $tableCellC:#eee;
}
.banner-swiper {
min-height: px2rem(600);
min-width: px2rem(448);
margin: px2rem(30) px2rem(96);
min-height: pxToRem(600px);
min-width: pxToRem(448px);
margin: pxToRem(30px) pxToRem(96px);
// position: relative;
overflow: hidden;
ul {
... ... @@ -107,55 +117,55 @@ $tableCellC:#eee;
.goodsName {
min-height: px2rem(83);
font-size: px2rem(28);
min-height: pxToRem(83px);
font-size: pxToRem(28px);
color: #fff;
padding-left: px2rem(25);
padding-right: px2rem(25);
line-height: px2rem(36);
padding-left: pxToRem(25px);
padding-right: pxToRem(25px);
line-height: pxToRem(36px);
background-color: #515150;
}
.goodsSubtitle{
min-height: px2rem(87);
font-size: px2rem(24);
line-height: px2rem(36);
min-height: pxToRem(87px);
font-size: pxToRem(24px);
line-height: pxToRem(36px);
color:$subFontC;
padding-left:px2rem(28);
padding-right:px2rem(28);
border-bottom: 1px solid $borderC;
padding-left:pxToRem(28px);
padding-right:pxToRem(28px);
border-bottom: 2px solid $borderC;
background-color: #f4f4f4;
}
.price-date{
// width: 100%;
color:$subFontC;
min-height: px2rem(88);
padding-left:px2rem(28);
padding-right:px2rem(28);
border-bottom: 1px solid $borderC;
min-height: pxToRem(88px);
padding-left:pxToRem(28px);
padding-right:pxToRem(28px);
border-bottom: 2px solid $borderC;
}
.goodsPrice{
float: left;
font-size: px2rem(34.59);
font-size: pxToRem(34.59px);
h1{
display: inline-block;
line-height: px2rem(88);
line-height: pxToRem(88px);
}
.currentPrice{
color:red;
margin-right: px2rem(10);
margin-right: pxToRem(10px);
}
.previousPrice{
text-decoration:line-through;
}
}
.periodOfMarket{
font-size: px2rem(24);
font-size: pxToRem(24px);
float: right;
h1{
display: inline-block;
line-height: px2rem(88);
line-height: pxToRem(88px);
}
}
.goodsName,
... ... @@ -169,39 +179,40 @@ $tableCellC:#eee;
}
.vipLevel {
display: table;
min-height: px2rem(88);
padding-left:px2rem(28);
padding-right:px2rem(28);
font-size: px2rem(22);
min-height: pxToRem(88px);
padding-left:pxToRem(28px);
padding-right:pxToRem(28px);
font-size: pxToRem(22px);
color: #999999;
border-bottom: 1px solid $borderC;
border-bottom: 2px solid $borderC;
span{
display: table-cell;
vertical-align: middle;
}
.vip-img{
padding-right: px2rem(22);
padding-right: pxToRem(22px);
img{
width: px2rem(52);
height: px2rem(32);
width: pxToRem(52px);
height: pxToRem(32px);
}
}
.vip-price{
padding-right: px2rem(55);
padding-right: pxToRem(55px);
}
.vip-price:last-child{
padding-right: 0;
}
}
.goodsDiscount{
min-height: px2rem(88);
padding-left:px2rem(28);
padding-right:px2rem(28);
font-size: px2rem(28);
min-height: pxToRem(88px);
padding-left:pxToRem(28px);
padding-right:pxToRem(28px);
font-size: pxToRem(28px);
color: $mainFontC;
line-height: px2rem(88);
border-bottom: 1px solid $borderC;
line-height: pxToRem(88px);
border-bottom: 2px solid $borderC;
.iconfont{
// padding-right:28rem/$pxConvertRem;
font-size: inherit;
... ... @@ -212,7 +223,7 @@ $tableCellC:#eee;
}
.feedback-list-page {
padding-top: px2rem(30);
padding-top: pxToRem(30px);
background-color: #f0f0f0;
.nav-tab{
... ... @@ -220,20 +231,20 @@ $tableCellC:#eee;
}
.nav-tab {
height: px2rem(60);
padding: px2rem(10) 0;
height: pxToRem(60px);
padding: pxToRem(10px) 0;
background-color: #fff;
border-top: 1px solid $borderC;
border-bottom: 1px solid $borderC;
border-top: 2px solid $borderC;
border-bottom: 2px solid $borderC;
}
.comment-nav, .consult-nav {
box-sizing: border-box;
float: left;
width: 50%;
height: px2rem(60);
line-height: px2rem(60);
font-size: px2rem(28);
height: pxToRem(60px);
line-height: pxToRem(60px);
font-size: pxToRem(28px);
text-align: center;
color: #ccc;
... ... @@ -243,13 +254,13 @@ $tableCellC:#eee;
}
.comment-nav {
border-right: 1px solid #ccc;
border-right: 2px solid #ccc;
}
.comment-content{
.comment-content-main{
background-color: #fff;
border-bottom: 1px solid $borderC;
border-bottom: 2px solid $borderC;
.user-name{
font-size: px2rem(24);
line-height: px2rem(62);
... ... @@ -265,6 +276,20 @@ $tableCellC:#eee;
.detail-content{
font-size: px2rem(28);
line-height: px2rem(36);
font-size: pxToRem(24px);
line-height: pxToRem(62px);
color:$mainFontC;
padding-left: pxToRem(28px);
padding-right: pxToRem(18px);
}
.goods-spec,
.comment-time{
font-size: pxToRem(24px);
line-height: pxToRem(62px);
}
.detail-content{
font-size: pxToRem(28px);
line-height: pxToRem(36px);
}
.goods-spec,
.detail-content{
... ... @@ -277,6 +302,11 @@ $tableCellC:#eee;
}
.detail-content{
padding-right: px2rem(28);
padding-left: pxToRem(28px);
}
.detail-content{
padding-right: pxToRem(28px);
}
.comment-time{
... ... @@ -285,13 +315,14 @@ $tableCellC:#eee;
}
.comment-content-footer{
min-height: px2rem(88);
min-height: pxToRem(88px);
text-align: center;
background-color: #fff;
border-bottom: 1px solid $borderC;
line-height: px2rem(88);
font-size: px2rem(28);
border-bottom: 2px solid $borderC;
line-height: pxToRem(88px);
font-size: pxToRem(28px);
a{
color: #e0e0e0;
.iconfont{
... ... @@ -308,7 +339,7 @@ $tableCellC:#eee;
}
.enter-store{
min-height: px2rem(100);
min-height: pxToRem(100px);
display: table;
a{
display: table-cell;
... ... @@ -319,19 +350,19 @@ $tableCellC:#eee;
// padding-right: 35rem/$pxConvertRem;
img{
width: px2rem(109);
height: px2rem(68);
width: pxToRem(109px);
height: pxToRem(68px);
margin-left: 0;
margin-right: px2rem(-25);
margin-right: pxToRem(-25px);
}
}
.store-name{
font-size: px2rem(34);
font-size: pxToRem(34px);
color:$mainFontC;
}
.store-link{
font-size:px2rem(28) ;
font-size:pxToRem(28px) ;
color:$subFontC;
text-align: right;
span{
... ... @@ -339,9 +370,51 @@ $tableCellC:#eee;
}
}
}
.goods-desc{
table{
// .goods-desc{
// table{
// }
// }
.materials{
.detail{
img{
display: block;
overflow: hidden;
width: pxToRem(90px);
height: pxToRem(120px);
padding-right: pxToRem(20px);
float: left;
}
.material-desc{
// float: left;
font-size: pxToRem(24px);
}
}
}
.product-detail{
.detail{
img{
margin-top: pxToRem(20px);
width: pxToRem(581px);
height: pxToRem(772px);
}
}
}
.detail-swiper{
.swiper-wrapper{
.swiper-slide{
width: pxToRem(114px);
div{
text-align: center;
}
div.cell{
background-color: $tableCellC;
padding:pxToRem(15px) 0;
border: 1px solid #fff;
}
}
}
}
}
... ...
{{> layout/header}}
<div class="online-service-page yoho-page">
<form class="question-search">
</form>
<ul class="question-list">
<li class="question-item">
问题问
<span class="iconfont">&#xe604;</span>
</li>
<li class="question-item">
问题问
<span class="iconfont">&#xe604;</span>
</li>
<li class="question-item">
问题问
<span class="iconfont">&#xe604;</span>
</li>
</ul>
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/header}}
<div class="good-detail-page yoho-page">
... ... @@ -125,27 +126,23 @@
<span class="en-title">{{enTitle}}</span>
</h1>
{{#detail}}
<div class="detail">
<table>
<tbody>
<tr>
<td>编号:{{nubmer}}</td>
<td>帽型:{{hatType}}</td>
</tr>
<tr>
<td>颜色:{{color}}</td>
<td>帽檐:{{bongrace}}</td>
</tr>
<tr>
<td>类型:{{type}}</td>
<td>细节:{{goodsDetail}}</td>
</tr>
<tr>
<td>性别:{{gender}}</td>
<td>风格:{{style}}</td>
</tr>
</tbody>
</table>
<div class="detail table">
<div class="row">
<div class="column">编号:{{nubmer}}</div>
<div class="column">帽型:{{hatType}}</div>
</div>
<div class="row">
<div class="column">颜色:{{color}}</div>
<div class="column">帽檐:{{bongrace}}</div>
</div>
<div class="row">
<div class="column">类型:{{type}}</div>
<div class="column">细节:{{goodsDetail}}</div>
</div>
<div class="row">
<div class="column">性别:{{gender}}</div>
<div class="column">风格:{{style}}</div>
</div>
</div>
{{/detail}}
</div>
... ... @@ -153,15 +150,29 @@
<div class="gap-block"></div>
{{#sizeInfo}}
<div class="size-info page-block">
<h1 class="title">
尺码信息
<span class="en-title">SIZE INFO</span>
{{title}}
<span class="en-title">{{enTitle}}</span>
</h1>
{{#detail}}
<div class="detail">
<div class="swiper-container detail-swiper" id="size-swiper-container">
<div class="swiper-wrapper">
{{#list}}
<div class="swiper-slide blue-slide" >
<div class="size-name cell">{{name}}</div>
<div class="size-m cell">{{sizem}}</div>
<div class="size-xl cell">{{sizexl}}</div>
</div>
{{/list}}
</div>
</div>
</div>
{{/detail}}
</div>
{{/sizeInfo}}
<div class="gap-block"></div>
... ... @@ -177,6 +188,32 @@
<div class="gap-block"></div>
{{#reference}}
<div class="size-info page-block">
<h1 class="title">
{{title}}
<span class="en-title">{{enTitle}}</span>
</h1>
{{#detail}}
<div class="detail">
<div class="swiper-container detail-swiper" id="reference-swiper-container">
<div class="swiper-wrapper">
{{#list}}
<div class="swiper-slide blue-slide" >
<div class="model-name cell">{{name}}</div>
<div class="first-model cell">{{firstModel}}</div>
<div class="second-model cell">{{secondModel}}</div>
</div>
{{/list}}
</div>
</div>
</div>
{{/detail}}
</div>
{{/reference}}
<div class="gap-block"></div>
{{#materials}}
<div class="materials page-block">
<h1 class="title">
... ... @@ -186,6 +223,7 @@
<div class="detail">
<img src="{{img}}" alt="">
<p class="material-desc">
{{desc}}
</p>
</div>
... ... @@ -194,15 +232,18 @@
<div class="gap-block"></div>
<div class="size-info page-block">
{{#productDetail}}
<div class="product-detail page-block">
<h1 class="title">
商品详情
<span class="en-title">SIZE INFO</span>
{{title}}
<span class="en-title">{{enTitle}}</span>
</h1>
<div class="detail">
<p>{{desc}}</p>
<img src="{{img}}" alt="">
</div>
</div>
{{/productDetail}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
... ... @@ -248,6 +248,12 @@ class HomeController extends AbstractAction
$service = \Index\UserModel::getOnlineServiceData();
print_r($service);
$this->_view->display('online_service', array(
'onlineServicePage' => true,
'pageFooter' => true,
'service' => $service
));
}
/**
... ...
... ... @@ -110,18 +110,34 @@ SHOE BQT KEN BLOCK',
'detail' =>array(
'list'=>array(
array(
'size'=>'M',
'shoulderWidth'=>'43',
'bodyLength'=>'102',
'sleevesLength'=>'65',
'chestMeasurement'=>'90'
'name'=>'尺寸',
'sizem'=>'m',
'sizexl' =>'XL'
),
array(
'size'=>'XL',
'shoulderWidth'=>'46',
'bodyLength'=>'106',
'sleevesLength'=>'69',
'chestMeasurement'=>'96'
'name'=>'肩宽',
'sizem'=>'43',
'sizexl' =>'46'
),
array(
'name'=>'衣长',
'sizem'=>'102',
'sizexl' =>'106'
),
array(
'name'=>'肩宽',
'sizem'=>'90',
'sizexl' =>'96'
),
array(
'name'=>'胸围',
'sizem'=>'90',
'sizexl' =>'96'
),
array(
'name'=>'xx',
'sizem'=>'xx',
'sizexl' =>'xx'
)
)
)
... ... @@ -143,23 +159,37 @@ SHOE BQT KEN BLOCK',
'title' => '模特试穿',
'enTitle' =>'REFERENCE',
'detail'=>array(
'list' => array(
'detail' =>array(
'list'=>array(
array(
'name'=>'头像',
'firstModel'=>'',
'secondModel' =>''
),
array(
'name'=>'模特',
'firstModel'=>'Oliver',
'secondModel' =>'Jvly'
),
array(
'avatar' =>'',
'name' =>'Oliver',
'height' => '170',
'weight' =>'55',
'BWH' =>'78/70/87',
'size' =>'S'
'name'=>'身高',
'firstModel'=>'175',
'secondModel' =>'170'
),
array(
'avatar' =>'',
'name' =>'Jvly',
'height' => '170',
'weight' =>'59',
'BWH' =>'78/70/87',
'size' =>'L'
'name'=>'体重',
'firstModel'=>'53',
'secondModel' =>'59'
),
array(
'name'=>'三围',
'firstModel'=>'78/70/87',
'secondModel' =>'78/70/87'
),
array(
'name'=>'吊牌尺',
'firstModel'=>'S',
'secondModel' =>'L'
)
)
)
... ... @@ -173,8 +203,10 @@ SHOE BQT KEN BLOCK',
),
'productDetail' =>array(
'title' => '商品详情',
'enTitle' =>'DETAILS',
'desc' => 'Married to the MOB是由Leah McSweeney创立的女装品牌,一向标榜不羁、大胆的女性streetwear设计。喜欢恶搞的女生们,赶紧入手吧。',
'img' =>''
'img' =>'http://static.dev.yohobuy.com/img/product/product.png'
)
);
... ...