Authored by hf

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

Showing 53 changed files with 4624 additions and 21 deletions

Too many changes to show.

To preserve performance only 53 of 53+ files are displayed.

nbproject
*.iml
.idea/
.ipr
.iws
*~
~*
*.diff
*.patch
*.bak
.DS_Store
Thumbs.db
.project
.idea
.gitignore
.gitmodules
compile
assets
script/nginx/logs
npm-debug.log
composer.lock
vendor/
.jscsrc
.jshintrc
.tags
.tags_sorted_by_file
yohobuyP.sublime-project
yohobuyP.sublime-workspace
.*proj
.svn/
*.swp
*.swo
*.pyc
*.pyo
.build
node_modules
_site
sea-modules
spm_modules
.cache
dist
coverage
css/
.sass-cache/
script/nginx/logs/
*.DS_Store
compile/
... ...
<?php return function ($in, $debugopt = 1) {
$cx = array(
'flags' => array(
'jstrue' => false,
'jsobj' => false,
'spvar' => true,
'prop' => false,
'method' => false,
'mustlok' => true,
'echo' => false,
'debug' => $debugopt,
),
'constants' => array(),
'helpers' => array(),
'blockhelpers' => array(),
'hbhelpers' => array(),
'partials' => array(),
'scopes' => array(),
'sp_vars' => array('root' => $in),
'lcrun' => 'Plugin\LCRun3',
);
return ''.'<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>'.Plugin\LCRun3::debug('[title]', 'encq', $cx, Plugin\LCRun3::debug('[title]', 'v', $cx, $in, array('title'))).'</title>
<meta name="keywords" content="'.Plugin\LCRun3::debug('[keywords]', 'encq', $cx, Plugin\LCRun3::debug('[keywords]', 'v', $cx, $in, array('keywords'))).'">
<meta name="description" content="'.Plugin\LCRun3::debug('[description]', 'encq', $cx, Plugin\LCRun3::debug('[description]', 'v', $cx, $in, array('description'))).'">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no">
<meta http-equiv="cleartype" content="on">
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
<meta content="telephone=no" name="format-detection" />
<meta content="email=no" name="format-detection" />
<script type="text/javascript">
(function(doc, win) {
var docEl = doc.documentElement;
(function() {
var clientWidth = docEl.clientWidth;
if (!clientWidth) {
return;
}
docEl.style.fontSize = 20 * (clientWidth / 320) + \'px\';
}());
})(document, window);
</script>
<link rel="dns-prefetch" href="//cdn.yoho.cn">
<link rel="dns-prefetch" href="//static.yohobuy.com">
<link rel="dns-prefetch" href="//img12.static.yhbimg.com">
<link rel="dns-prefetch" href="//img13.static.yhbimg.com">
'.((Plugin\LCRun3::debug('[rlsEnv]', 'ifvar', $cx, Plugin\LCRun3::debug('[rlsEnv]', 'v', $cx, $in, array('rlsEnv')))) ? '<link rel="stylesheet" href="http://cdn.yoho.cn/myohobuy/'.Plugin\LCRun3::debug('[version]', 'encq', $cx, Plugin\LCRun3::debug('[version]', 'v', $cx, $in, array('version'))).'/index.css">
' : '').''.((Plugin\LCRun3::debug('[preEnv]', 'ifvar', $cx, Plugin\LCRun3::debug('[preEnv]', 'v', $cx, $in, array('preEnv')))) ? '<link rel="stylesheet" href="http://cdn.yoho.cn/myohobuy/'.Plugin\LCRun3::debug('[version]', 'encq', $cx, Plugin\LCRun3::debug('[version]', 'v', $cx, $in, array('version'))).'/index.css">
' : '').''.((Plugin\LCRun3::debug('[testEnv]', 'ifvar', $cx, Plugin\LCRun3::debug('[testEnv]', 'v', $cx, $in, array('testEnv')))) ? '<link rel="stylesheet" href="http://static.buy.test.yoho.cn/dist/myohobuy/'.Plugin\LCRun3::debug('[version]', 'encq', $cx, Plugin\LCRun3::debug('[version]', 'v', $cx, $in, array('version'))).'/index.css">
' : '').''.((Plugin\LCRun3::debug('[devEnv]', 'ifvar', $cx, Plugin\LCRun3::debug('[devEnv]', 'v', $cx, $in, array('devEnv')))) ? '<link rel="stylesheet" href="http://static.dev.yohobuy.com/css/index.css">
' : '').'<link rel="apple-touch-icon-precomposed" href="http://static.yohobuy.com/m/v1/img/touch/apple-touch-icon-144x144-precomposed-new.png">
<link rel="apple-touch-startup-image" sizes="640x920" href="http://static.yohobuy.com/m/v1/img/startup/startup-retina.png" media="screen and (max-device-width: 480px) and (-webkit-min-device-pixel-ratio: 2)">
<link rel="apple-touch-startup-image" sizes="320x460" href="http://static.yohobuy.com/m/v1/img/startup/startup.png" media="screen and (max-device-width: 320)">
</head>
<body '.((Plugin\LCRun3::debug('[isPassportPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[isPassportPage]', 'v', $cx, $in, array('isPassportPage')))) ? 'class=passport-body' : '').'>
'.''.Plugin\LCRun3::debug('[pageHeader]', 'sec', $cx, Plugin\LCRun3::debug('[pageHeader]', 'v', $cx, $in, array('pageHeader')), $in, false, function($cx, $in) {return '<header id="yoho-header" class="yoho-header'.((Plugin\LCRun3::debug('[boys]', 'ifvar', $cx, Plugin\LCRun3::debug('[boys]', 'v', $cx, $in, array('boys')))) ? ' boys' : '').''.((Plugin\LCRun3::debug('[girls]', 'ifvar', $cx, Plugin\LCRun3::debug('[girls]', 'v', $cx, $in, array('girls')))) ? ' girls' : '').''.((Plugin\LCRun3::debug('[kids]', 'ifvar', $cx, Plugin\LCRun3::debug('[kids]', 'v', $cx, $in, array('kids')))) ? ' kids' : '').''.((Plugin\LCRun3::debug('[lifeStyle]', 'ifvar', $cx, Plugin\LCRun3::debug('[lifeStyle]', 'v', $cx, $in, array('lifeStyle')))) ? ' life-style' : '').'">
'.((Plugin\LCRun3::debug('[navBack]', 'ifvar', $cx, Plugin\LCRun3::debug('[navBack]', 'v', $cx, $in, array('navBack')))) ? ' <a href="javascript:history.go(-1);" class="iconfont nav-back">&#xe610;</a>
' : '').''.Plugin\LCRun3::debug('[navHome]', 'sec', $cx, Plugin\LCRun3::debug('[navHome]', 'v', $cx, $in, array('navHome')), $in, false, function($cx, $in) {return ' <a href="'.Plugin\LCRun3::debug('this', 'encq', $cx, $in).'" class="iconfont nav-home">&#xe611;</a>
';}).''.Plugin\LCRun3::debug('[navTitle]', 'sec', $cx, Plugin\LCRun3::debug('[navTitle]', 'v', $cx, $in, array('navTitle')), $in, false, function($cx, $in) {return ' <p class="nav-title">'.Plugin\LCRun3::debug('this', 'encq', $cx, $in).'</p>
';}).''.Plugin\LCRun3::debug('[navBtn]', 'sec', $cx, Plugin\LCRun3::debug('[navBtn]', 'v', $cx, $in, array('navBtn')), $in, false, function($cx, $in) {return ' <span class="nav-btn">'.Plugin\LCRun3::debug('this', 'encq', $cx, $in).'</span>
';}).'</header>
';}).''.''.'<div class="index-page yoho-page">
<div class="index-container">
<div class="index-header clearfix">
<div class="index-logo">
</div>
<div class="box">
<a href="javascript:void(0);" class="no-search">取消</a>
<form action="'.Plugin\LCRun3::debug('[searchUrl]', 'encq', $cx, Plugin\LCRun3::debug('[searchUrl]', 'v', $cx, $in, array('searchUrl'))).'" class="index-search">
<div class="search-box">
<input type="hidden" name="from" value="search">
<input type="text" name="query" placeholder="搜索" autocomplete="off">
<span class="iconfont clear-text">&#xe623;</span>
<span class="iconfont search-icon empty">&#xe60f;</span>
</div>
</form>
</div>
</div>
<div class="index-channel">
<img class="img" src="'.Plugin\LCRun3::debug('[background]', 'encq', $cx, Plugin\LCRun3::debug('[background]', 'v', $cx, $in, array('background'))).'">
<div class="index-channel-list">
<a href="/boys" class="list-item">男生 <span class="lighter">BOYS</span> <span class="iconfont right-icon">&#xe614;</span></a>
<a href="/girls" class="list-item">女生 <span class="lighter">GIRLS</span> <span class="iconfont right-icon">&#xe614;</span></a>
<a href="/kids" class="list-item">潮童 <span class="lighter">KIDS</span> <span class="iconfont right-icon">&#xe614;</span></a>
<a href="/lifestyle" class="list-item">创意生活 <span class="lighter">LIFESTYLE</span> <span class="iconfont right-icon">&#xe614;</span></a>
</div>
</div>
</div>
</div>
'.''.''.Plugin\LCRun3::debug('[pageFooter]', 'sec', $cx, Plugin\LCRun3::debug('[pageFooter]', 'v', $cx, $in, array('pageFooter')), $in, false, function($cx, $in) {return '<footer id="yoho-footer" class="yoho-footer hide">
<p class="op-row">
<span class="back-to-top">
Back to top
<i class="iconfont">&#xe608;</i>
</span>
</p>
<address class="copyright">
CopyRight©2007-2016 南京新与力文化传播有限公司
</address>
</footer>
';}).'
'.''.''.Plugin\LCRun3::debug('[showDownloadApp]', 'sec', $cx, Plugin\LCRun3::debug('[showDownloadApp]', 'v', $cx, $in, array('showDownloadApp')), $in, false, function($cx, $in) {return '<div class="float-layer hide" id="float-layer-app">
<div class="float-layer-left">
<span class="yoho-icon iconfont">&#xe60d;</span>
<p>新用户送千元礼包</p>
</div>
<a href="javascript:void(0);" id="float-layer-close" >
<i class="close-icon iconfont">&#xe623;</i>
<div class="circle-rightbottom"></div>
</a>
<a href="http://m.yohobuy.com/download/hyapp" id="float-layer-btn">
立即下载
</a>
</div>
';}).'
'.''.((Plugin\LCRun3::debug('[hasWxShare]', 'ifvar', $cx, Plugin\LCRun3::debug('[hasWxShare]', 'v', $cx, $in, array('hasWxShare')))) ? '<script type="text/javascript" charset="utf-8" src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
' : '').''.((Plugin\LCRun3::debug('[rlsEnv]', 'ifvar', $cx, Plugin\LCRun3::debug('[rlsEnv]', 'v', $cx, $in, array('rlsEnv')))) ? '<script src="http://cdn.yoho.cn/myohobuy/'.Plugin\LCRun3::debug('[version]', 'encq', $cx, Plugin\LCRun3::debug('[version]', 'v', $cx, $in, array('version'))).'/lib.js"></script>
<script src="http://cdn.yoho.cn/myohobuy/'.Plugin\LCRun3::debug('[version]', 'encq', $cx, Plugin\LCRun3::debug('[version]', 'v', $cx, $in, array('version'))).'/index.js"></script>
' : '').''.((Plugin\LCRun3::debug('[preEnv]', 'ifvar', $cx, Plugin\LCRun3::debug('[preEnv]', 'v', $cx, $in, array('preEnv')))) ? '<script src="http://cdn.yoho.cn/myohobuy/'.Plugin\LCRun3::debug('[version]', 'encq', $cx, Plugin\LCRun3::debug('[version]', 'v', $cx, $in, array('version'))).'/lib.js"></script>
<script src="http://cdn.yoho.cn/myohobuy/'.Plugin\LCRun3::debug('[version]', 'encq', $cx, Plugin\LCRun3::debug('[version]', 'v', $cx, $in, array('version'))).'/index.js"></script>
' : '').''.((Plugin\LCRun3::debug('[testEnv]', 'ifvar', $cx, Plugin\LCRun3::debug('[testEnv]', 'v', $cx, $in, array('testEnv')))) ? '<script src="http://static.buy.test.yoho.cn/dist/myohobuy/'.Plugin\LCRun3::debug('[version]', 'encq', $cx, Plugin\LCRun3::debug('[version]', 'v', $cx, $in, array('version'))).'/lib.js"></script>
<script src="http://static.buy.test.yoho.cn/dist/myohobuy/'.Plugin\LCRun3::debug('[version]', 'encq', $cx, Plugin\LCRun3::debug('[version]', 'v', $cx, $in, array('version'))).'/index-debug.js"></script>
' : '').''.((Plugin\LCRun3::debug('[devEnv]', 'ifvar', $cx, Plugin\LCRun3::debug('[devEnv]', 'v', $cx, $in, array('devEnv')))) ? '<script src="http://localhost:8000/static/js/sea.js?nowrap"></script>
<script>seajs.config({base: \'http://localhost:8000/\'});</script>
' : '').'<script type="text/javascript">
(function(w,d,s,j,f){
w[\'YohoAcquisitionObject\']=f;
w[f]=function(){w[f].p=arguments;};
var a=d.createElement(s);
var m=d.getElementsByTagName(s)[0];
a.async=1;
a.src=j;
m.parentNode.insertBefore(a,m);
})(window,document,\'script\',\'http://cdn.yoho.cn/yas-jssdk/1.0.13/yas-debug.js\',\'_yas\');
</script>
'.'<script>
seajs.use(\'js/common\');
</script>
'.((Plugin\LCRun3::debug('[psList]', 'ifvar', $cx, Plugin\LCRun3::debug('[psList]', 'v', $cx, $in, array('psList')))) ? '<script>
seajs.use(\'js/guang/plus-star/list\');
</script>
' : '').''.((Plugin\LCRun3::debug('[psDetail]', 'ifvar', $cx, Plugin\LCRun3::debug('[psDetail]', 'v', $cx, $in, array('psDetail')))) ? '<script>
seajs.use(\'js/guang/plus-star/detail\');
</script>
' : '').''.((Plugin\LCRun3::debug('[guangHome]', 'ifvar', $cx, Plugin\LCRun3::debug('[guangHome]', 'v', $cx, $in, array('guangHome')))) ? '<script>
seajs.use(\'js/guang/home\');
</script>
' : '').''.((Plugin\LCRun3::debug('[guangList]', 'ifvar', $cx, Plugin\LCRun3::debug('[guangList]', 'v', $cx, $in, array('guangList')))) ? '<script>
seajs.use(\'js/guang/list\');
</script>
' : '').''.((Plugin\LCRun3::debug('[guangDetail]', 'ifvar', $cx, Plugin\LCRun3::debug('[guangDetail]', 'v', $cx, $in, array('guangDetail')))) ? '<script>
seajs.use(\'js/guang/detail\', function(d) {
d.i(true);
});
</script>
' : '').''.((Plugin\LCRun3::debug('[guangEzine]', 'ifvar', $cx, Plugin\LCRun3::debug('[guangEzine]', 'v', $cx, $in, array('guangEzine')))) ? '<script>
seajs.use(\'js/guang/detail\', function(d) {
d.i(false);
});
</script>
' : '').''.((Plugin\LCRun3::debug('[regIndex]', 'ifvar', $cx, Plugin\LCRun3::debug('[regIndex]', 'v', $cx, $in, array('regIndex')))) ? '<script>
seajs.use(\'js/passport/register/register\');
</script>
' : '').''.((Plugin\LCRun3::debug('[regCode]', 'ifvar', $cx, Plugin\LCRun3::debug('[regCode]', 'v', $cx, $in, array('regCode')))) ? '<script>
seajs.use(\'js/passport/register/code\');
</script>
' : '').''.((Plugin\LCRun3::debug('[regPwd]', 'ifvar', $cx, Plugin\LCRun3::debug('[regPwd]', 'v', $cx, $in, array('regPwd')))) ? '<script>
seajs.use(\'js/passport/register/password\');
</script>
' : '').''.((Plugin\LCRun3::debug('[loginIndex]', 'ifvar', $cx, Plugin\LCRun3::debug('[loginIndex]', 'v', $cx, $in, array('loginIndex')))) ? '<script>
seajs.use(\'js/passport/login/login\');
</script>
' : '').''.((Plugin\LCRun3::debug('[loginInternational]', 'ifvar', $cx, Plugin\LCRun3::debug('[loginInternational]', 'v', $cx, $in, array('loginInternational')))) ? '<script>
seajs.use(\'js/passport/login/international\');
</script>
' : '').''.((Plugin\LCRun3::debug('[backEmail]', 'ifvar', $cx, Plugin\LCRun3::debug('[backEmail]', 'v', $cx, $in, array('backEmail')))) ? '<script>
seajs.use(\'js/passport/back/email\');
</script>
' : '').''.((Plugin\LCRun3::debug('[backEmailSuccess]', 'ifvar', $cx, Plugin\LCRun3::debug('[backEmailSuccess]', 'v', $cx, $in, array('backEmailSuccess')))) ? '<script>
seajs.use(\'js/passport/back/email-success\');
</script>
' : '').''.((Plugin\LCRun3::debug('[backMobile]', 'ifvar', $cx, Plugin\LCRun3::debug('[backMobile]', 'v', $cx, $in, array('backMobile')))) ? '<script>
seajs.use(\'js/passport/back/mobile\');
</script>
' : '').''.((Plugin\LCRun3::debug('[backCode]', 'ifvar', $cx, Plugin\LCRun3::debug('[backCode]', 'v', $cx, $in, array('backCode')))) ? '<script>
seajs.use(\'js/passport/back/code\');
</script>
' : '').''.((Plugin\LCRun3::debug('[backNewPwd]', 'ifvar', $cx, Plugin\LCRun3::debug('[backNewPwd]', 'v', $cx, $in, array('backNewPwd')))) ? '<script>
seajs.use(\'js/passport/back/new-password\');
</script>
' : '').''.((Plugin\LCRun3::debug('[channelPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[channelPage]', 'v', $cx, $in, array('channelPage')))) ? '<script>
seajs.use(\'js/index/channel\');
seajs.use(\'js/index/footer\');
</script>
' : '').''.((Plugin\LCRun3::debug('[grilsHomePage]', 'ifvar', $cx, Plugin\LCRun3::debug('[grilsHomePage]', 'v', $cx, $in, array('grilsHomePage')))) ? '<script>
seajs.use(\'js/home/home\', function(h) {
h.set(\'girls\');
});
seajs.use(\'js/index/footer\');
</script>
' : '').''.((Plugin\LCRun3::debug('[boysHomePage]', 'ifvar', $cx, Plugin\LCRun3::debug('[boysHomePage]', 'v', $cx, $in, array('boysHomePage')))) ? '<script>
seajs.use(\'js/home/home\', function(h) {
h.set(\'boys\');
});
seajs.use(\'js/index/footer\');
</script>
' : '').''.((Plugin\LCRun3::debug('[kidsHomePage]', 'ifvar', $cx, Plugin\LCRun3::debug('[kidsHomePage]', 'v', $cx, $in, array('kidsHomePage')))) ? '<script>
seajs.use(\'js/home/home\', function(h) {
h.set(\'kids\');
});
seajs.use(\'js/index/footer\');
</script>
' : '').''.((Plugin\LCRun3::debug('[lifestyleHomePage]', 'ifvar', $cx, Plugin\LCRun3::debug('[lifestyleHomePage]', 'v', $cx, $in, array('lifestyleHomePage')))) ? '<script>
seajs.use(\'js/home/home\', function(h) {
h.set(\'lifestyle\');
});
seajs.use(\'js/index/footer\');
</script>
' : '').''.((Plugin\LCRun3::debug('[newArrivalPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[newArrivalPage]', 'v', $cx, $in, array('newArrivalPage')))) ? '<script>
seajs.use(\'js/product/newsale/newarrival\');
seajs.use(\'js/index/footer\');
</script>
' : '').''.((Plugin\LCRun3::debug('[discountPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[discountPage]', 'v', $cx, $in, array('discountPage')))) ? '<script>
seajs.use(\'js/product/newsale/discount\');
seajs.use(\'js/index/footer\');
</script>
' : '').''.((Plugin\LCRun3::debug('[hotrankPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[hotrankPage]', 'v', $cx, $in, array('hotrankPage')))) ? '<script>
seajs.use(\'js/product/newsale/hot-rank\');
seajs.use(\'js/index/footer\');
</script>
' : '').''.((Plugin\LCRun3::debug('[goodListPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[goodListPage]', 'v', $cx, $in, array('goodListPage')))) ? '<script>
seajs.use(\'js/product/list\');
seajs.use(\'js/index/footer\');
</script>
' : '').''.((Plugin\LCRun3::debug('[goodsDetailPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[goodsDetailPage]', 'v', $cx, $in, array('goodsDetailPage')))) ? '<script>
seajs.use(\'js/product/detail/detail\');
</script>
' : '').''.((Plugin\LCRun3::debug('[goodsCommentsPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[goodsCommentsPage]', 'v', $cx, $in, array('goodsCommentsPage')))) ? '<script>
seajs.use(\'js/product/detail/comments-consults\');
</script>
' : '').''.((Plugin\LCRun3::debug('[categoryPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[categoryPage]', 'v', $cx, $in, array('categoryPage')))) ? '<script>
seajs.use(\'js/category/index\');
seajs.use(\'js/index/footer\');
</script>
' : '').''.((Plugin\LCRun3::debug('[brandPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[brandPage]', 'v', $cx, $in, array('brandPage')))) ? '<script>
seajs.use(\'js/category/brand\');
seajs.use(\'js/index/footer\');
</script>
' : '').''.((Plugin\LCRun3::debug('[searchPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[searchPage]', 'v', $cx, $in, array('searchPage')))) ? '<script>
seajs.use(\'js/index/search\');
seajs.use(\'js/index/footer\');
</script>
' : '').''.((Plugin\LCRun3::debug('[shoppingCartPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[shoppingCartPage]', 'v', $cx, $in, array('shoppingCartPage')))) ? '<script>
seajs.use(\'js/shopping-cart/cart\');
</script>
' : '').''.((Plugin\LCRun3::debug('[giftAdvancePage]', 'ifvar', $cx, Plugin\LCRun3::debug('[giftAdvancePage]', 'v', $cx, $in, array('giftAdvancePage')))) ? '<script>
seajs.use(\'js/shopping-cart/gift-advance\');
</script>
' : '').''.((Plugin\LCRun3::debug('[orderEnsurePage]', 'ifvar', $cx, Plugin\LCRun3::debug('[orderEnsurePage]', 'v', $cx, $in, array('orderEnsurePage')))) ? '<script>
seajs.use(\'js/shopping-cart/order-ensure\');
</script>
' : '').''.((Plugin\LCRun3::debug('[myIndexPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[myIndexPage]', 'v', $cx, $in, array('myIndexPage')))) ? '<script>
seajs.use(\'js/me/index\');
</script>
' : '').''.((Plugin\LCRun3::debug('[orderPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[orderPage]', 'v', $cx, $in, array('orderPage')))) ? '<script>
seajs.use(\'js/me/order\');
</script>
' : '').''.((Plugin\LCRun3::debug('[orderDetailPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[orderDetailPage]', 'v', $cx, $in, array('orderDetailPage')))) ? '<script>
seajs.use(\'js/me/order-detail\');
</script>
' : '').''.((Plugin\LCRun3::debug('[favPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[favPage]', 'v', $cx, $in, array('favPage')))) ? '<script>
seajs.use(\'js/me/fav\');
</script>
' : '').''.((Plugin\LCRun3::debug('[suggestPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[suggestPage]', 'v', $cx, $in, array('suggestPage')))) ? '<script>
seajs.use(\'js/me/suggest\');
</script>
' : '').''.((Plugin\LCRun3::debug('[couponsPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[couponsPage]', 'v', $cx, $in, array('couponsPage')))) ? '<script>
seajs.use(\'js/me/coupons\');
</script>
' : '').''.((Plugin\LCRun3::debug('[onlineServicePage]', 'ifvar', $cx, Plugin\LCRun3::debug('[onlineServicePage]', 'v', $cx, $in, array('onlineServicePage')))) ? '<script>
seajs.use(\'js/me/online-service\');
</script>
' : '').''.((Plugin\LCRun3::debug('[addressPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[addressPage]', 'v', $cx, $in, array('addressPage')))) ? '<script>
seajs.use(\'js/me/address\');
</script>
' : '').''.((Plugin\LCRun3::debug('[myGuangPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[myGuangPage]', 'v', $cx, $in, array('myGuangPage')))) ? '<script>
seajs.use(\'js/me/my-guang\');
</script>
' : '').''.((Plugin\LCRun3::debug('[personalDetailsPage]', 'ifvar', $cx, Plugin\LCRun3::debug('[personalDetailsPage]', 'v', $cx, $in, array('personalDetailsPage')))) ? '<script>
seajs.use(\'js/me/personal-details\');
</script>
' : '').''.''.'<!-- Google Tag Manager -->
<noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-W958MG" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<script>
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({\'gtm.start\':
new Date().getTime(),event:\'gtm.js\'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!=\'dataLayer\'?\'&l=\'+l:\'\';j.async=true;j.src=
\'//www.googletagmanager.com/gtm.js?id=\'+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,\'script\',\'dataLayer\',\'GTM-W958MG\');
</script>
<!-- End Google Tag Manager -->
<script type="text/javascript">
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = "//hm.baidu.com/hm.js?c6ee7218b8321cb65fb2e98f284d8311";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
<script>
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = "//hm.baidu.com/hm.js?65dd99e0435a55177ffda862198ce841";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
<script src="http://static.yohobuy.com/js/analytics/analysis.js"></script>
<script src="http://static.yohobuy.com/m/v1/js/om_code.js"></script>
'.'</body>
</html>'.'';
}
?>
\ No newline at end of file
... ...
... ... @@ -51,10 +51,18 @@ conf/vhosts,nginx豕ィ蜀瑚。ィ譁サカ,restart-nginx.bat, start-nginx.bat, start-php5.
修改完成后可以直接点击start-php5.3.29.bat 和 start-nginx.bat启动PHP和NGINX的服务
PS: nginx的vhost配置参考附件
### 配置HOSTS
127.0.0.1 m.dev.yohobuy.com
#### H5
127.0.0.1 m.dev.yohobuy.com
127.0.0.1 static.m.dev.yohobuy.com
#### WEB
127.0.0.1 web.dev.yohobuy.com
127.0.0.1 webstatic.dev.yohobuy.com
### 最后一步
进入yohobuy/static目录,运行npm install 和 spm install(需要先`spm config set registry http://spm.yoho.cn`将源指定到我们自己的包仓库)安装下依赖, 成功后在当前目录运行`gulp`启动开发环境服务...看看[m.dev.yohobuy.com](m.dev.yohobuy.com)有没有反应?
... ... @@ -63,4 +71,133 @@ Done ? 'congratulations' : '逵狗恚譏ッ荳肴弍郛コ莠サ荵茨シ御ク崎隗」蜀ウ逧慮蛟吝
## 其他你需要做的事情
* js代码风格严格控制,所以请按照[代码规范](http://git.dev.yoho.cn/web/learning-documentation/tree/master/%E5%89%8D%E7%AB%AF%E5%BC%80%E5%8F%91%E7%9B%B8%E5%85%B3/%E4%BB%A3%E7%A0%81%E8%A7%84%E8%8C%83)编码,JS代码采用了pre-commit的hook进行控制,之前需要你安装下[代码检查](http://git.dev.yoho.cn/ued/yoho-fe/tree/master/code-checker)所需要的东西,请了解并执行。
* GIT使用规范你需要熟读,可以看[git flow](http://git.dev.yoho.cn/web/learning-documentation/wikis/home)[pro git](http://git-scm.com/book/en/v2)
* 其他开发中使用到的东西(handlebars,sass,seajs,spm等)请参考git库web/learing documentation或者自行google
\ No newline at end of file
* 其他开发中使用到的东西(handlebars,sass,seajs,spm等)请参考git库web/learing documentation或者自行google
## FE开发规则
* HTML请包裹`<div class="your-page yoho-page"></div>`
* css请包裹 `.your-page{...}`,防止样式污染
* 数据结构需及时更新维护至docs/data-structure.md和docs/web-data-structure.md
## 附:Nginx配置
```
server
{
listen 80;
server_name m.dev.yohobuy.com *.dev.yohobuy.com;
#access_log /nginx/logs/access_test_yoho_cn.log combined;
error_log F:/nginx/logs/error_test_yoho_cn.log warn;
root F:/yohobuy/yohobuy/m.yohobuy.com/public;
# https
#ssl on;
#ssl_certificate //nginx/data/server.pem;
#ssl_certificate_key /nginx/data/server.key;
#ssl_session_timeout 10m;
location / {
index index-dev.php;
if (!-f $request_filename){
rewrite ^/(.+)$ /index-dev.php?$1& last;
}
}
location ~ .*\.php?$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index-dev.php;
#fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
server
{
listen 80;
server_name static.dev.yohobuy.com;
#access_log /nginx/logs/access_test_yoho_cn.log combined;
#error_log /nginx/logs/error_test_yoho_cn.log warn;
root F:/yohobuy/static;
# https
#ssl on;
#ssl_certificate //nginx/data/server.pem;
#ssl_certificate_key /nginx/data/server.key;
#ssl_session_timeout 10m;
location / {
expires 1h;
}
location ~* \.(svg|eot|ttf|woff|otf)$ {
add_header Access-Control-Allow-Origin *;
expires 30d;
}
}
server
{
listen 80;
server_name web.dev.yohobuy.com *.dev.yohobuy.com;
#access_log /nginx/logs/access_test_yoho_cn.log combined;
error_log F:/nginx/logs/error_test_yoho_cn.log warn;
root F:/yohobuy/yohobuy/www.yohobuy.com/public;
# https
#ssl on;
#ssl_certificate //nginx/data/server.pem;
#ssl_certificate_key /nginx/data/server.key;
#ssl_session_timeout 10m;
location / {
index index-dev.php;
if (!-f $request_filename){
rewrite ^/(.+)$ /index-dev.php?$1& last;
}
}
location ~ .*\.php?$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index-dev.php;
#fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
server
{
listen 80;
server_name webstatic.dev.yohobuy.com;
#access_log /nginx/logs/access_test_yoho_cn.log combined;
#error_log /nginx/logs/error_test_yoho_cn.log warn;
root F:/yohobuy/web-static;
# https
#ssl on;
#ssl_certificate //nginx/data/server.pem;
#ssl_certificate_key /nginx/data/server.key;
#ssl_session_timeout 10m;
location / {
expires 1h;
}
location ~* \.(svg|eot|ttf|woff|otf)$ {
add_header Access-Control-Allow-Origin *;
expires 30d;
}
}
```
\ No newline at end of file
... ...
# WEB数据结构定义
## 公共定义
### 公共底部
{
footerTop: true //是否显示足部有货services,意见反馈和更多YOHO产品等模块
}
### 商品
{
skn: 1,
thumb: 'path/to/goods/img',
url: '',
name: '',
salePrice: 500, //售价
marketPrice: 1000, //市场价
tags: [
{
isNew: true //NEW
},
{
isSale: true //SALE
},
{
isLimit: false //限量商品
},
{
isNewFestival: true //新品节
},
{
isReNew: true //再到着
},
{
isYearEndPromotion: true //年终大促
},
{
isYearMidPromotion: true // 年中大促
}
],
isFew: true, //即将售罄
showColBtn: true, //是否显示收藏按钮
coled: true //已收藏
}
### 路径导航
{
pathNav: [
//链接类型
{
href: '',
name: ''
},
//文字类型
{
name: ''
}
]
}
## 站点头部
{
gobuytype: 'gobuyboys',//购物车样式
searchcate: 'searchcateboys', //搜索栏样式
navbars: [{//一级导航
name_cn: '男生',
name_en: 'BOYS',
link: '',
classname: 'boys',
index_main: 0,
subnav: [{
name: '新品到着',
link: '',
index_sub:0,
thirdnav: [
{
title: '上装',
branditems: [
{
brandname: '背心',
link: ''
},
{
brandname: 'T恤',
link: ''
},
{
brandname: '衬衫',
link: ''
},
{
brandname: 'POLO',
link: ''
},
{
brandname: '毛衣/针织',
link: ''
}]
}
]
}, {
name: '品牌一览',
link: '',
thirdnav: []
}]
}],
myyoho: {
email: 'caomei@163.com',
viptype: '普通会员',
currentscore: 495,
totalscore: 600,
cardtype: '银卡',
infolist: [{
name: '待处理的订单',
link: '',
num: '0'
}, {
name: '我的收藏',
link: '',
num: '1'
}, {
name: '我的优惠券',
link: '',
num: '2'
}, {
name: '我的YOHO币',
link: '',
num: '1'
}, {
name: '我的退货换货',
link: '',
num: '1'
}],
updlink: ''
},
gobuy: {
gobuynum: 3
},
breadcrumbnav: [{
notend: {
link: 'http://www.yohobuy.com',
name: 'BOYS首页'
}
}, {
notend: {
link: 'http://www.yohobuy.com',
name: '上衣'
}
}, {
isend: {
link: 'http://list.yohobuy.com/?msort=1&amp;gender=1,3',
name: '衬衫'
}
}]
}
## 男首
{
boys: [
//banner
{
slide: {
//大图列表
list: [
{
'href': '',
'img': ''
},
...
],
//小图列表
pagination: [
{
'href': '',
'img': ''
},
...
]
}
},
{
//最新速报
newReport: {
name: '最新速报 NEW!', //楼层标题
list: [
{
'href': '',
'img': ''
},
...
]
},
},
{
//优选品牌
preferenceBrand: {
name: '优选品牌 BRAND', //楼层标题
imgBrand: [ //有图片及logo的品牌
{
'href': '',
'img': ''
},
...
]
}
},
{
//单品 HOT
singlehot:{
name:'单品 HOT', //楼层标题
imgHot:[//有图片及logo的品牌
{
'href': '',
'img': ''
},
...
]
}
},
{
//广告
adbanner:{
'href':'',
'img':''
}
},
{
//潮人适配等楼层
recommend:{
name:'潮人配饰 ORNAMENT',
navs:[
{
'id':'',
'href':'',
'name':'MORE'
}
],
tplrecommend:{
//左上角两张图片
keyword:[
{
name:'',
img:'',
url:''
},
...
],
//左下角类别文案
category:[
{
name:'',
url:''
},
...
],
//中间两张图片
brands:[
{
name:'',
img:'',
url:''
},
...
],
//右边六张图片
types:[
{
name:'',
img:'',
url:''
},
...
],
//下面五张图片
products:[
{
name:'',
img:'',
url:''
},
...
]
}
}
},
{
//最新上架
newArrivls:{
name:'最新上架 NEW ARRIVALS',
navs:[
{
'id':'',
'href':'',
'name':'MORE'
}
]
}
}
]
}
### 男首新品上架 ajax数据
{
code:200, //返回状态
commodity:[
{
'url':'',
'img':'',
'name':'',
'price':'',
'state':'' //表示商品某种状态,用于显示商品左上角,比如已将售清等
},
...
]
}
### logo品牌,ajax数据
{
moreBrand: '', //更多商品链接
logoBrand: [
{
'href': '',
'img': ''
},
...
]
}
## 搜索、列表、NEW/SALE共用
### 左侧导航相关
{
leftContent: [
{
allSort: {
//全部品类
updateNum: 2, //更新总数
list: [
{
name: 'AA', //一级分类
num: 12 //一级分类更新数目
childList: [
{
name: 'AAA', //二级分类
href: '##', //二级分类跳转链接
num: 12 //二级分类更新数目
}
]
}
]
}
},
{
picLink: {
//图片导航
title: 'AA', //图片导航标题
list: [
{
href: '',
src: '' // 图片地址
}
]
}
},
{
newSales: {
//一周新品上架
updateNum: 123,
list: [
{
name: 'AAA',
href: '',
num: 12,
}
]
}
},
{
allDiscount: {
//全部折扣
updateNum: 111,
list: [
{
name: 'VVV',
href: '##',
num: 11
}
]
}
}
]
}
### 无搜索/筛选结果提示
通过**goods**字段控制页面相关元素的渲染与否,若无结果,不要传goods字段
无搜索结果必须传递搜索的*searchActionUrl*,比如:search.yohobuy.com;可选字段为*keyWord*
### 标准页面内容
{
//筛选相关
filters: {
checkedConditions: {
clearUrl: '', //清空筛选链接
conditions: [
//正常情况下文字显示
{
href: '',
name: '暗黑'
},
//特殊情况下颜色显示
{
href: '',
'color': '#f00'
},
...
]
},
//-- 筛选项数据Start(需要显示就传,不显示不传) --
channel: [
{
href: '',
name: 'Boys'
},
...
],
sort: [
{
name: '上衣',
sub: [
{
href: '',
name: 'T恤'
},
...
]
},
...
],
brand: {
default: [
{
href: '',
name: ''
},
...
],
//索引:index为索引键值(字母转化为小写)
brandIndex: [
{
index: 'all',
name: '全部'
},
{
index: '0-9',
name: '0 ~ 9'
},
{
index: 'a',
name: 'A'
},
...
],
brandShow: [
{
id: 1,
href: '',
index:'0-9', //与brandIndex中索引一致
name: '5cm',
key: '5cm' //key为品牌关键字,用于搜索和索引,保持小写
},
{
id: 2,
href: '',
index: 'k',
name: 'KTZ',
key: 'ktz'
},
...
],
price: [
{
href: '',
name: '0-239'
},
...
],
color: [
{
href: '',
name: '黑色',
rgb: '#000' //此处若为彩色和银色,需要传图片路径字符串:url('path/to/img')
},
...
],
size: [
{
href: '',
name: ''
},
...
],
seniorChose: [
{
attr: 'style', //查找的键值
name: '风格',
showMulti: true, //是否显示多选按钮
sub: [
{
id: '',
href: '',
name: ''
},
...
]
},
...
]
}
},
//操作Banner相关
opts: {
sortType: [
{
href: '',
name: '默认'
},
{
active: true, //当前选中
href: '',
name: '最新',
hasSortOrient: true, //是否有正逆序
desc: true //逆序排序(默认不传为正序)
},
{
href: '',
name: '价格',
hasSortOrient: true
},
{
href: '',
name: '折扣',
hasSortOrient: true
}
],
checks: [
{
name: '新品',
checked: true,
href: ''
},
{
name: '打折',
href: ''
},
{
name: '限量',
href: ''
}
],
//重要提示:页面筛选无结果时,接下来的参数不用传;
countPerPage => 120,
pageCounts => [
{
href: '',
count: 60
},
...
],
curPage: 1,
pageCount: 30,
preHref: '', //若当前为第一页,不传此参数
nexHref: '' //若当前为最后一页,不传此参数
//重要提示END
},
//重要提示:若无搜索或者筛选结果,则不传goods,totalCount和pager也都不传字段
goods: [
{
...//good
}
],
totalCount: 333, //共多少件商品
pager: '', //右下角分页HTML
//若为搜索导致的无结果,则传递关键词字段;筛选导致的不传
keyWord: '...',
searchActionUrl: ''
//重要提示END
//最近浏览<搜索无此内容>
latestWalk: [
{
href: '',
img: '',
salePrice: '',
marketPrice: ''
},
...
]
}
### 搜索页
{
search: {
//路径导航
pathNav: [...],
..//标准页面内容,见上
}
}
### 商品列表页
{
list: {
//若为品牌首页则需要
brandBanner: {
bannerHeight: 100, //banner高度
banner: '',
bannerHome: '',
bannerIntro: '', //品牌介绍页
coled: true //品牌是否收藏
},
pathNav: [],
brandAbout: '', //品牌介绍页传HTML文本,非品牌介绍页则不传
leftContent: [], //...
//品牌入口
shopEntry: {
home: '',
logo: '',
shopName: '',
sort: [
{
href: '',
name: '上衣'
},
...
]
},
//分类介绍
sortIntro: {
name: '',
enName: '',
desc: '',
img: ''
},
...,//标准页面内容,见上
}
}
### new/sale
{
newSale: {
banner: {
bannerHeight: 222,
img: ''
},
title: {
name: '全部商品',
count: 2555
},
leftContent: [],
..//标准页面内容,见上
}
}
### 热销排行
{
hotrankPage: true, //引用hotrank.js
hotrank: [
{
slide: {
//大图列表
list: [
{
'href': '',
'img': ''
},
...
]
}
},
{
popular: { //人气单品
name: '', //楼层标题
list: [
{
href: '', //链接
img: '', //图片
title: '', //商品名称
price: '', //商品原价
sPrice: '', //商品现价
rank: '' //排行
}
...
]
}
}
{
hotBrands: { //同上logo品牌 ajax数据
name: '' //楼层标题
}
},
{
hotWeek: { //一周热卖
name: '' //楼层标题
nav: [ //一周热卖导航
{
textCn' => 'TOP100', //导航名称
'url' => '',
'sid' => 1 //对应ajax发送id
}
],
list: [ //同上面商品数据
{
...
}
...
]
}
}
]
}
### 商品详情页
{
detail: {
banner: {
bgColor: '',
bgImg: '',
homeUrl: '',
logo: '',
coled: true
},
pathNav: [...],
goodInfo: {
skn: '',
tags: [
{
isNew: true
},
{
isReNew: true
},
{
isSale: true
},
{
isNewFestival: true
},
{
isLimit: true
},
{
isYearEndPromotion: true
},
{
isYearMidPromotion: true
},
{
isFew: true
}
],
img: '',
name: '',
brandUrl: '',
brandName: '',
marketPrice: 999,
salePrice: 777,
activity: [
{
url: '',
activityImg: ''
},
{
type: '加价购',
des: ''
},
...
],
colors: [
{
focus: true,
disable: true,
title: '',
src: '',
thumbs: [
{
url: '',
img: '', //左侧缩略图
shower: '' //缩略图的大图显示
},
...
],
size: [
{
skn: '',
title: '',
name: ''
num: 20
}
]
}
],
coled: true,
goCartUrl: '' //去购物车结算
},
description: {
basic: [
{
key: '材质',
value: 'xxx'
},
...
],
comfort: [
{
name: '硬度',
minDes: '软',
blocks: [
{
cur: true
},
//n个等级
...
],
maxDes: ''
},
...
]
},
material: {
detail: [
{
img: '',
name: '',
enName: '',
text: ''
},
...
],
wash: [
{
img: '',
name: ''
},
...
]
},
size: {
thead: [
{
width: '130',
name: ''
},
...
],
tbody: [
[
... //每行数据
],
...
],
sizeImg: ''
},
reference: [
thead: [
{
width: '',
name: ''
},
...
],
tbody: [
[
'header-img-url', .., ..
],
...
]
],
details: '', //html
consultComment: {
consultNum: 0,
commentNum: 2,
comments: [
{
avatar: '',
userName: '',
color: '',
size: '',
date: '',
comment: ''
},
...
],
hasMoreComments: true,
commentUrl: '',
consults: [
{
avatar: '',
question: '',
date: '',
answer: ''
}
],
hasMoreConsults: true
},
recentView: [
{
url: '',
img: '',
name: '',
marketPrice: '',
salePrice: ''
},
...
]
}
}
## 逛
### 【公用】资讯
{
id: '',
classification: '最新',
isReco: true, //是否推荐
url: '',
isSquareImg: true, //是否是正方形图
img: '',
title: '',
editorUrl: '',
author: '',
pTime: '',
pView: '',
content: '',
tags: [
{
url: '',
tag: ''
},
...
],
liked: true,
like: 10,
comment: 10
}
### 【共用】右侧栏
{
exRecos: [
{
url: '',
img: '',
title: ''
},
..
],
hotTags: [
{
url: '',
tagName: ''
},
...
],
ads: [
{
url: '',
img: ''
},
...
]
}
### 首页
{
guang: {
slider: [
{
url: '',
img: ''
},
...
],
msgTypes: [
{
typeId: '',
isActive: true,
navUrl: '',
type: '最新'
},
...
],
msgs: [
{
...//资讯
}
],
msgPager: ''//HTML
}
}
### 列表页
{
guang: {
tag: '户外', //XX关联的文章
msgs: [
{
..//资讯
},
...
],
msgPager: ''
}
}
### 编辑页
{
guang: {
editor: {
avatar: '',
name: '',
intro: ''
},
msgs: [],
msgPager: ''
}
}
### 逛详情页
{
guang:{
id: 1, //详情页id
header: {
title: '', //大标题
avatar: '', //作者头像
name: '' , //作者名字
authorUrl: '', //作者主页url
intro: '', //作者简介
time: '', //时间
click: '', //点击数
commentNum: '' //评论数
},
content: [
{
pic: '' //内容大图
},
{
text: '' //内容文字
},
{
smallPic: [ //内容两张并列小图
'http://img02.static.yohobuy.com/cms/2015/06/26/12/027eb72bc880b4fe1aad361296c871c2ea.jpg',
'http://img02.static.yohobuy.com/cms/2015/06/26/12/027eb72bc880b4fe1aad361296c871c2ea.jpg'
]
},
{
relatedReco: { //相关推荐
recos: [
{
..//通用商品信息
}
...
],
moreReco: '', //标题是否有more,有传url,没有不传
}
}
],
brands: [ //相关品牌
{
'thumb' => '', //品牌图片
'name' => '004', //品牌名称
'url' => '' //品牌url
}
...
],
userInfo: { //用户点赞收藏
isLike: true, //当前用户是否点赞
likeNum: 84, //点赞次数
isCollected: true //当前用户是否收藏
},
tag: [ //内容标签
{
name: LEE, //标签内容
url: www.baidu.com //标签链接
}
...
],
relatedPost:[ //相关文章
{
url => '', //链接
thumb => '', //图片
title => '' //标题
}
...
],
commentInfo: '', //初始内容,用于登陆页跳转回来后的内容不丢失
comment: {
commentNum: 4, //如果没有评论,数字为0,list和commentPager可以不传
list: [ //评论列表
{
avatar: '', //评论用户头像
name: '', //用户名字
content: '', //评论内容
time: '' //发表时间
}
...
]
}
}
}
## Passport
### 【公用】左侧YohoFamily LOGO
{
coverHref: '', //跳转链接,需要有跳转就传,不需要就不传
coverImg: '' //图片地址
}
### 登录页
{
passport: {
coverHref: '', //跳转链接,需要有跳转就传,不需要就不传
coverImg: '' //图片地址
countryCode: '86', //无+
countryName: '中国',
countryList: [
{
code: '',
name: ''
},
...
]
}
}
### 注册页
{
registerPage: true, //用于加载js
passport: {
actionUrl: '/passport/register/mobileregister', //action
region: [
{
id: 86, //国家地区码
name: '中国',
selected: true
}
],
location: '+86', //默认在哪个地区
captchaUrl: 'http://www.yohobuy.com/passport/images?t=1449799445', //验证码请求地址
itemUrl' => '##', //服务条款地址
referUrl' => 'http://www.yohobuy.com/', //注册后跳转链接
loginUrl' => '/signin.html?refer=http://www.yohobuy.com/', //登录链接
coverHref' => '/passport', //右侧封面跳转链接
coverImg' => '##', //右侧封面地址
}
}
\ No newline at end of file
... ...
No preview for this file type
<?php
namespace Action;
use Index\HomeModel;
class WebAction extends AbstractAction
{
/**
* 设置头部
*
* @param string $channel (默认不设置)
* @return
*/
protected function setWebNavHeader($channel = '')
{
if(empty($channel)) {
$channel = \Index\HomeModel::getSwitchChannel();
}
else {//设置频道
\Index\HomeModel::setSwitchToCookie($channel);
}
$header = array(
'navbars'=>\Index\HomeModel::getNavBars($channel),
'gobytype'=> 'gobuy'.$channel,
'searchcate'=>'searchcate'.$channel,
'myyoho' => array(
'email'=>'hhh@126.com',
'viptype'=>'普通会员',
'currentscore' => 495,
'totalscore' => 600,
'cardtype' => '银卡',
'infolist' => array(
array(
'name' =>'待处理的订单',
'link' =>'',
'num' => '0'
),
array(
'name' =>'我的收藏',
'link' =>'',
'num' => '1'
),
array(
'name' =>'我的优惠券',
'link' =>'',
'num' => '2'
),
array(
'name' =>'我的YOHO币',
'link' =>'',
'num' => '1'
),
array(
'name' =>'我的退货换货',
'link' =>'',
'num' => '1'
)
),
'updlink' => ''
),
'gobuy'=> array(
'gobuynum' =>3
),
'breadcrumbnav'=> array(
array(
'notend'=>array(
'link' => 'http=>//www.baidu.com',
'name' => 'BOYS首页'
)
),
array(
'notend'=>array(
'link' => 'http=>//www.baidu.com',
'name' => '上衣'
)
),
array(
'isend'=>array(
'link' => 'http=>//www.baidu.com',
'name' => '衬衫'
)
)
)
);
$this->_view->assign('headerdata', $header);
}
}
\ No newline at end of file
... ...
... ... @@ -51,6 +51,7 @@ class Yohobuy
'android' => 'fd4ad5fcfa0de589ef238c0e7331b585',
'iphone' => 'a85bb0674e08986c6b115d5e3a4884fa',
'ipad' => 'ad9fcda2e679cf9229e37feae2cdcf80',
'web' => '0ed29744ed318fd28d2c07985d3ba633',
);
/**
... ... @@ -65,10 +66,13 @@ class Yohobuy
// 苹果IPAD
elseif (strstr($_SERVER['HTTP_USER_AGENT'], 'iPad')) {
return 'ipad';
}
elseif (stristr($_SERVER['HTTP_USER_AGENT'], 'android')) {
return 'android';
}
// 其它
else {
return 'android';
return 'web';
}
}
... ...
<?php
namespace Configs;
class ChannelConfig
{
/**
* 最新上架分类
*/
public static $newArrivalSortList = array(
//女首上架分类
'girls' => array(
array(
'misort' => 20,
'viewNum' => 4
),// 棉衣
array(
'misort' => 18,
'viewNum' => 4
),// 羽绒服
array(
'misort' => 22,
'viewNum' => 4
),// 风衣/大衣
array(
'misort' => 44,
'viewNum' => 4
),//休闲/运动鞋
array(
'misort' => 21,
'viewNum' => 4
),// 夹克
array(
'misort' => 16,
'viewNum' => 4
),// 卫衣
array(
'misort' => 26,
'viewNum' => 4
),// 休闲裤
array(
'misort' => 45,
'viewNum' => 4
),//靴子
array(
'misort' => 226,
'viewNum' => 4
),// 防风外套
array(
'misort' => 27,
'viewNum' => 4
),// 牛仔裤
array(
'misort' => 257,
'viewNum' => 4
),//毛衣/针织
array(
'misort' => 11,
'viewNum' => 4
),// T恤
array(
'misort' => 31,
'viewNum' => 4
),//连衣裙
array(
'misort' => 32,
'viewNum' => 4
),//半身裙
array(
'misort' => 50,
'viewNum' => 4
),//手拎包/单肩包
array(
'misort' => 60,
'viewNum' => 4
),//帽子
array(
'misort' => 49,
'viewNum' => 4
),//双肩包
array(
'misort' => 65,
'viewNum' => 4
),//首饰
array(
'misort' => 314,
'viewNum' => 4
),//围巾
array(
'misort' => 59,
'viewNum' => 4
),//手表
),
//潮童上架分类
'kids' => array(
array(
'misort' => 404,
'viewNum' => 4
),// 夹克
array(
'misort' => 396,
'viewNum' => 4
),// 卫衣
array(
'misort' => 369,
'viewNum' => 4
),// 休闲裤
array(
'misort' => 406,
'viewNum' => 4
),// 大衣/风衣
array(
'misort' => 368,
'viewNum' => 4
),// 休闲/运动鞋
array(
'misort' => 366,
'viewNum' => 4
),// T恤
array(
'misort' => 400,
'viewNum' => 4
),// 毛衣/针织
array(
'misort' => 367,
'viewNum' => 4
),// 衬衫
array(
'misort' => 388,
'viewNum' => 4
),// 牛仔裤
array(
'misort' => 392,
'viewNum' => 4
),// 双肩包
array(
'misort' => 384,
'viewNum' => 4
),// 打底裤/紧身裤
array(
'misort' => 371,
'viewNum' => 4
),// 连衣裙
array(
'misort' => 421,
'viewNum' => 4
),// 围巾
array(
'misort' => 425,
'viewNum' => 4
),// 围兜
),
//创意生活上架分类
'lifestyle' => array(
array(
'sort' => 171,
'viewNum' => 5
),//耳机
array(
'sort' => 398,
'viewNum' => 5
),//智能装备
array(
'sort' => 185,
'viewNum' => 5
),//相机
array(
'misort' => 259,
'viewNum' => 5
),//美妆
array(
'sort' => 267,
'viewNum' => 5
),//杯子/水壶
array(
'sort' => 313,
'viewNum' => 5
),//手机/ipad壳套
array(
'sort' => 211,
'viewNum' => 5
),//数码配件
array(
'sort' => 292,
'viewNum' => 5
),//玩偶
array(
'sort' => 272,
'viewNum' => 5
),//储物收纳
array(
'sort' => 183,
'viewNum' => 5
),//居家用品
array(
'sort' => 273,
'viewNum' => 5
),//厨具/餐具
array(
'sort' => 271,
'viewNum' => 5
),//靠枕/靠垫/抱枕
),
);
}
\ No newline at end of file
... ...
<?php
namespace LibModels\Web\Home;
use Api\Yohobuy;
use Api\Sign;
class IndexData
{
//分类服务
const URL_OPERATIONS_CATEGORY = 'operations/service/v1/category';
//资源位地址
const URL_OPERATIONS_RESOURCE_GET = 'operations/api/v5/resource/get';
/**
* 获取导航数据
*
* @param int $status (default)
* @param string $fields (default)
* @return array
*/
public static function getNavData($status = 1, $fields = 'id,sort_name,sort_name_en,parent_id,sort_url,sort_ico,content_code,is_new,is_hot,separative_sign')
{
$params = array('parent_id'=>'','platform'=>'web',
'status'=> $status,'fields'=> $fields
);
return Yohobuy::yarClient(Yohobuy::SERVICE_URL . self::URL_OPERATIONS_CATEGORY,'getCategory', $params, false);
}
/**
* 获取资源数据
*
* @param string $content_code
* @param string $client_type
* @return array
*/
public static function getResourceData($content_code, $client_type = 'web')
{
// 构建必传参数
$params = Yohobuy::param();
$params['content_code'] = $content_code;
$params['client_type'] = $client_type;
$params['client_secret'] = Sign::getSign($params);
return Yohobuy::get(Yohobuy::SERVICE_URL . 'operations/api/v5/resource/get', $params);
}
}
\ No newline at end of file
... ...
<?php
namespace LibModels\Web\Product;
class SearchData extends \LibModels\Wap\Product\SearchData
{
/**
* 根据分类列表获取商品信息
*
* @param array $params
* @param array $sortList
* @return array
*/
public static function getSearchDataBySort(array $params, array $sortList)
{
$data = array();
foreach ($sortList as $v) {
if(empty($v['viewNum'])){
continue;
}
$params = array_merge($params, $v);
$list = self::searchElasticByCondition($params, true);
$productList = empty($list['data']['product_list']) ? array() : $list['data']['product_list'];
if(count($productList) < $v['viewNum']){
continue;
}
$data = array_merge($data, $productList);
}
return $data;
}
}
\ No newline at end of file
... ...
<?php
namespace Plugin\DataProcess\WebChannel;
class Channel
{
public static $formatChannel = array(
'boys' => '\Plugin\DataProcess\WebChannel\Channel\Kids',
'girls' => '\Plugin\DataProcess\WebChannel\Channel\Girls',
'kids' => '\Plugin\DataProcess\WebChannel\Channel\Kids'
);
public static function getFormat($channel, $data)
{
//通用处理器
$result = Process::getContent($data, $channel);
$channelResult = array();
if(isset(self::$formatChannel[$channel]))
{
$class = self::$formatChannel[$channel];
$channelResult = $class::format($data);
}
//组合数据
$result = $result + $channelResult;
ksort($result);
return array_values($result);
}
}
... ...
<?php
namespace Plugin\DataProcess\WebChannel\Channel;
abstract class AbstractChannel
{
/***
* 处理数据
* @param array $resource
* @return array[以key方式存储数据]
*/
public static function format($resource){}
}
\ No newline at end of file
... ...
<?php
namespace Plugin\DataProcess\WebChannel\Channel;
class Kids extends AbstractChannel
{
/**
* {@inheritDoc}
* @see \Plugin\DataProcess\WebChannel\Channel\AbstractChannel::format()
*/
public static function format($resource)
{
$data = array();
foreach($resource as $key => $val)
{
}
return $data;
}
}
\ No newline at end of file
... ...
<?php
namespace Plugin\DataProcess\WebChannel;
use Plugin\Images;
use Plugin\Helpers;
/**
* web版通用处理器
*/
class Process
{
public static function getContent(array &$data, $type = 1)
{
//组合处理数据
$result = self::mergeProcess($data, $type);
foreach($data as $key => $val)
{
$fun = $val['template_name'];
if (empty($val['data']) || !is_callable("self::$fun")) {
continue;
}
//单个处理数据
$build = self::$fun($val, $type);
if(!empty($build))
{
$result[$key] = $build;
}
unset($data[$key]);
}
return $result;
}
/**
* 热门分类处理
*
* @param array $data
* @param string $type
* @return array
*/
public static function hotCategory(array $data, $type)
{
$data = $data['data'];
$result = $temp = array();
$temp = array('name' => $data['name'],
'navs' => array(),'tplrecommend'=> array());
foreach($data['navs']['list'] as $val) {
$temp['navs'][] = array(
'id'=>'', 'href'=> $val['url'],
'name' => $val['name']
);
}
foreach($data['menuNav']['blocks'] as $val) {
$val['img'] = Images::getImageUrl($val['img'], 185, 76, 1);
$val['url'] = Helpers::transUrl($val['url'], $type);
$temp['tplrecommend']['keyword'][] = array('href'=> $val['url'],'name'=> $val['title'], 'img'=>$val['img']);
}
foreach($data['menuNav']['list'] as $val) {
if(empty($val['name']) && empty($val['url']))
{
continue;
}
$val['url'] = Helpers::transUrl($val['url'], $type);
$temp['tplrecommend']['category'][] = array('name'=> $val['name'],'url'=> $val['url']);
}
foreach($data['imgs'] as $key => $val) {
$w = 185; $h = 248;
if($key == 0)
{
$w = 377;
$h = 504;
}
$val['img'] = Images::getImageUrl($val['img'], $w, $h, 1);
$val['url'] = Helpers::transUrl($val['url'], $type);
if($key == 0)
{
$temp['tplrecommend']['brands'][] = array('href'=> $val['url'],'name'=> $val['title'],'img'=> $val['img']);
}
else
{
$temp['tplrecommend']['types'][] = array('href'=> $val['url'],'name'=> $val['title'],'img'=> $val['img']);
}
}
$result['recommend'] = $temp;
return $result;
}
/**
* banner处理
*
* @param array $data
* @param string $type
* @return array
*/
public static function focus(array $data, $type)
{
$result = array();
$temp = array();
$width = 1150;
$height = 450;
if($data['focus_type'] == 1) {
foreach($data['data'] as $val) {
$val['src'] = Images::getImageUrl($val['src'], $width, $height, 1);
$val['url'] = Helpers::transUrl($val['url'], $type);
$temp[] = array('href'=> $val['url'],'img' => $val['src']);
}
$result['slide']['list'] = $temp;
}
return $result;
}
/**
* 组合数据处理
*
* @param array $data
* @param string $type
* @return array
*/
public static function mergeProcess(array &$data, $type)
{
$result = array();
foreach($data as $key => $val)
{
if(isset($data[$key]) && isset($data[$key+3])) //人气单品[template: text & textNav & goods & floor]
{
$temp = array('singlehot' => array('name'=>'','imgHot'=> array(),'brands'=> array()));
if($data[$key]['template_name'] == 'text' && $data[$key+1]['template_name'] == 'textNav'
&& $data[$key+2]['template_name'] == 'goods' && $data[$key+3]['template_name'] == 'floor')
{
//text模版
$temp['singlehot']['name']= $val['data']['text'];
//goods模版
foreach($data[$key+2]['data'] as $val)//TODO
{
$temp['singlehot']['imgHot'][] = array('href'=> '',//$val['url'],
'name' => '','price'=> '');
}
//floor模版
foreach($data[$key+3]['data'] as $val)
{
$val['src'] = Images::getImageUrl($val['src'], 185, 86, 1);
$val['url'] = Helpers::transUrl($val['url'], $type);
$temp['singlehot']['brands'][] = array('href' => $val['url'],
'img' => $val['src'],'name'=>$val['title']);
}
$result[$key] = $temp;
unset($data[$key], $data[$key+1], $data[$key+2], $data[$key+3]);
}
}
if(isset($data[$key]) && isset($data[$key+1])) //优选品牌 [ template: text & focus ]
{
$temp = array('preferenceBrands'=> array('name'=>'', 'slider'=> array()));
if($data[$key]['template_name'] =='text' && $data[$key+1]['template_name'] =='focus')
{
$temp['preferenceBrands']['name'] = $val['data']['text'];
//focus 分类
foreach($data[$key+1]['data'] as $val)
{
$width = 320;
$height = 430;
$val['src'] = Images::getImageUrl($val['src'], $width, $height, 1);
$val['url'] = Helpers::transUrl($val['url'], $type);
$temp['preferenceBrands']['slider'][] = array('href'=> $val['url'],'img'=> $val['src']);
}
$result[$key] = $temp;
unset($data[$key], $data[$key+1]);
}
}
if(isset($data[$key]) && isset($data[$key+2])) //girlkids[ template: text & textNav & goods]
{
$temp = array('girlkids'=> array('name'=>'', 'imgHot'=> array()));
if($data[$key]['template_name'] =='text' && $data[$key+2]['template_name'] =='goods')
{
$temp['girlkids']['name'] = $val['data']['text'];
foreach($data[$key+2]['data'] as $val)//TODO
{
$temp['girlkids']['imgHot'][] = array('href'=> '',//$val['url'],
'name' => '','price'=>'');
}
$result[$key] = $temp;
unset($data[$key], $data[$key+1], $data[$key+2]);
}
}
}
return $result;
}
}
\ No newline at end of file
... ...
... ... @@ -462,6 +462,26 @@ class Helpers
}
/**
* 根据url获取拼接之后的地址,用于用户清理缓存
* @param string $url url地址
* @param string $channel 频道,默认为woman
*
* @return string 处理之后的地址
*/
public static function transUrl($url, $channel='woman') {
$extra = '';
if(!empty($url) && stripos($url, '?') === false) {
$extra = '?channel='.$channel;
}
if(!empty($url) && stripos($url, '?') !== false){
$extra = '&channel='.$channel;
}
return $url . $extra;
}
/**
* 各国手机号规则
*/
private static function areaMobielVerify($mobile, $area = 86)
... ...
... ... @@ -79,7 +79,6 @@
}
.not-avaliable {
// -webkit-filter: grayscale(100%);
@include filter(grayscale(100%));
background-image: image-url('me/employ/employ-grey.jpg') !important;
}
}
... ...
{{> layout/header}}
<div class="home-page yoho-page boys" data-page="boys" data-newarrivls='{"url":"/boys/commodity","pageCount":"4","flag":"boys"}'>
{{# boys}}
{{! 头部banner}}
{{# slide}}
{{>index/slide-banner}}
{{/ slide}}
{{! 新品速报}}
{{# newReport}}
<div class="new-report clearfix">
{{> index/floor-header}}
<ul class="report-list clearfix">
{{# list}}
{{#unless @last}}
<li>
<a href="{{href}}">
<img class="lazy" data-original="{{img}}" alt="">
</a>
</li>
{{/unless}}
{{/ list}}
</ul>
{{# list}}
{{#if @last}}
<div class="last-item">
<a href="{{href}}">
<img class="lazy" data-original="{{img}}" alt="">
</a>
</div>
{{/if}}
{{/ list}}
</div>
{{/ newReport}}
{{! 优选品牌}}
{{# preferenceBrands}}
<div class="preference-brand">
{{> index/floor-header}}
<div class="img-brand">
<ul class="img-list clearfix">
{{# imgBrand}}
<li class="img-item">
<a href="{{href}}">
<img src="{{img}}" alt="">
</a>
</li>
{{/ imgBrand}}
</ul>
<div class="img-brand-switch">
<a class="prev" href="javascript:;">
<span class="iconfont">&#xe60c;</span>
</a>
<a class="next" href="javascript:;">
<span class="iconfont">&#xe60b;</span>
</a>
</div>
</div>
<div class="logo-brand"></div>
</div>
{{/ preferenceBrands}}
{{! 单品/广告}}
{{# singlehot}}
{{> index/boy-singlehot}}
{{/ singlehot}}
{{! 广告}}
{{# adbanner}}
<div class="adbanner">
<a href="{{url}}"><img class="lazy" data-original="{{img}}"/></a>
</div>
{{/ adbanner}}
{{! 品类推荐}}
{{# recommend}}
{{> index/boy-recommend}}
{{/ recommend}}
{{! 新品上架}}
{{# newArrivls}}
{{> index/commodity}}
{{/ newArrivls}}
{{/ boys}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/header}}
{{#if errorPage}}
<div class="err-page err-404 screen">
<div class="tips-404">
<p class="tip">很抱歉,您访问的页面不存在!</p>
<p class="links">
<a href="{{newProductLink}}">浏览新品</a>
&nbsp;&nbsp;
<a href="http://www.yohobuy.com/">返回首页</a>
</p>
</div>
</div>
{{/if}}
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/header}}
<div class="home-page yoho-page girls" data-page="girls" data-newarrivls='{"url":"/girls/commodity","pageCount":"4","flag":"girls"}'>
{{# girls}}
{{! 头部banner}}
{{# debrisSlider}}
<div class="debris-slider clearfix">
<div class="left-col col">
{{# left}}
<a href="{{href}}">
<img class="lazy" data-original="{{img}}">
</a>
{{/ left}}
</div>
<div class="center-col col">
<ul class="slide-wrapper">
{{# center}}
<li>
<a href="{{href}}">
<img class="lazy" data-original="{{img}}">
</a>
</li>
{{/ center}}
</ul>
<div class="slide-switch">
<a class="prev" href="javascript:;">
<span class="iconfont">&#xe60c;</span>
</a>
<a class="next" href="javascript:;">
<span class="iconfont">&#xe60b;</span>
</a>
</div>
</div>
<div class="right-col col">
{{# right}}
<a href="{{href}}">
<img class="lazy" data-original="{{img}}">
</a>
{{/ right}}
</div>
</div>
{{/ debrisSlider}}
{{! 优选品牌}}
{{# preferenceBrands}}
{{> index/preference-brand}}
{{/ preferenceBrands}}
{{! 品类推荐}}
{{# recommend}}
{{> index/girl-recommend}}
{{/ recommend}}
{{! 手风琴}}
{{# accordion}}
{{> index/slide-accordion}}
{{/ accordion}}
{{! 单品/广告}}
{{# singlehot}}
{{> index/girl-singlehot}}
{{/ singlehot}}
{{! 新品上架}}
{{# newArrivls}}
{{> index/commodity}}
{{/ newArrivls}}
{{/ girls}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/header}}
{{# guang}}
<div class="guang-detail-page guang-page yoho-page clearfix" data-id="{{id}}">
<div class="left-side detail-body">
{{# header}}
<div class="detail-title">{{title}}</div>
<div class="article-info clearfix">
<div class="article-author">
<div class="author-avatar">
<img src="{{avatar}}" alt="">
</div>
</div>
<div class="author-info">
<a class="author-name" href="{{authorUrl}}">{{name}}</a>
</div>
<div class="article-status clearfix">
<span class="article-time">{{time}}</span>
<span class="article-click">点击:{{click}}</span>
<span id="article-comment" class="article-comment"><em class="comment-num">{{commentNum}}</em>条评论</span>
</div>
</div>
{{/ header}}
<div class="article-main">
{{# content}}
{{# pic}}
<div class="article-pic block">
<img class="lazy" data-original="{{.}}">
</div>
{{/ pic}}
{{# text}}
<div class="article-text block">
<p>{{.}}</p>
</div>
{{/ text}}
{{#if smallPic}}
<div class="article-small-pic block clearfix">
{{# smallPic}}
<img class="lazy" data-original="{{.}}">
{{/ smallPic}}
</div>
{{/if}}
{{# relatedReco}}
<div class="related-reco block clearfix">
<div class="block-header">
相关推荐
{{# moreReco}}
<a class="more-reco" href="{{.}}">MORE ></a>
{{/ moreReco}}
</div>
<div class="recos clearfix">
{{# recos}}
{{> product/good}}
{{/ recos}}
</div>
</div>
{{/ relatedReco}}
{{/ content}}
</div>
<div class="related-brand block clearfix">
<div class="block-header">相关品牌</div>
<div class="brands">
{{# brands}}
<div class="brand">
<a class="thumb" href="{{url}}">
<img class="lazy" data-original="{{thumb}}">
</a>
<p class="brand-name">{{name}}</p>
</div>
{{/ brands}}
</div>
</div>
{{# userInfo}}
<div class="user-handle">
<ul class="clearfix">
<li id="prise-btn" class="like-status{{#isLike}} liked{{/isLike}}">
<a href="javascript:;">
<i class="iconfont">&#xe626;</i>
<span class="like-num">{{likeNum}}</span>
</a>
</li>
<li id="collect-btn" class="sort-collect{{#isCollected}} collected{{/isCollected}}">
<a href="javascript:;">
<i class="iconfont">&#xe616;</i>
<span>收藏</span>
<span class="cancel-collect">取消收藏</span>
</a>
</li>
</ul>
</div>
{{/ userInfo}}
<div class="article-bottom-info clearfix">
{{#if tag}}
<div class="article-tag clearfix">
<i class="tag-icon iconfont">&#xe624;</i>
<ul class="clearfix">
{{# tag}}
<li>
<a href="{{url}}">{{name}}</a>
</li>
{{/ tag}}
</ul>
</div>
{{/if}}
<div class="article-share">
<span class="share-to">
分享至:
<a class="share-a share-sina" data-type="weibo" title="分享到新浪微博"></a>
<a class="share-a share-weixin" data-type="weixin" title="分享到微信朋友圈"></a>
<a class="share-a share-tencent" data-type="tqq" title="分享到腾讯微博"></a>
<a class="share-a share-qzone" data-type="qzone" title="分享到QQ空间"></a>
<a class="share-a share-qq" data-type="qq" title="分享到QQ好友"></a>
<a class="share-a share-renren" data-type="renren" title="分享到人人网"></a>
<a class="share-a share-douban" data-type="douban" title="分享到豆瓣"></a>
<div class="shareWeixin"></div>
</span>
<input id="share-img" type="hidden" value="{{sharedImg}}">
<input id="share-title" type="hidden" value="{{title}}">
<input id="weixin-url" type="hidden" value="{{weixinUrl}}">
</div>
</div>
{{#if relatedPost}}
<div class="detail-related-posts">
<ul class="clearfix">
{{# relatedPost}}
<li>
<a href="{{url}}">
<span class="bg-img">
<img src="{{thumb}}" alt="">
</span>
<div class="post-title">
<h2>{{title}}</h2>
</div>
</a>
</li>
{{/ relatedPost}}
</ul>
</div>
{{/if}}
<div id="comment-area" class="comment-area">
<div class="comment-textarea">
<textarea id="comment-info" placeholder="我有话要说。。。">{{commentInfo}}</textarea>
</div>
<div class="comment-publish clearfix">
<span id="word-count-tip" class="word-count-tip"></span>
<a id="comment-btn" class="publish-btn disable">评论</a>
</div>
<div id="pjax-container" class="comments-wrap">
{{# comment}}
<h4>
<span class="comment-num">{{commentNum}}</span>
条评论 <i></i>
</h4>
<p class="comments-empty">还没有评论,快抢沙发吧</p>
<div class="commnets-resultwrapper">
<ul class="comments-list">
{{# list}}
<li class="clearfix">
<div class="avatar">
<img class="comment-user-avatar" src="{{avatar}}" alt=""></div>
<div class="comment-info">
<p class="comment-user-name">{{name}}</p>
<p class="comment-content">{{content}}</p>
<p class="comment-time">{{time}}</p>
</div>
</li>
{{/ list}}
</ul>
<div class="comment-pager pager">{{{commentPager}}}</div>
</div>
{{/ comment}}
</div>
</div>
</div>
<div class="right-side detail-side">
{{> guang/right-side}}
</div>
</div>
{{/ guang}}
{{> layout/footer}}
... ...
{{> layout/header}}
<div class="guang-editor-page guang-page yoho-page clearfix">
{{# guang}}
{{# editor}}
<div class="editor-info clearfix">
<div class="author-avatar">
<img src="{{avatar}}" alt="">
</div>
<div class="author-info">
<p class="author-name">{{name}}</p>
<p class="author-introduce">{{intro}}</p>
</div>
</div>
{{/ editor}}
<div class="left-side">
<div id="msg-list" class="msg-list">
{{# msgs}}
{{> guang/msg}}
{{/ msgs}}
</div>
<div class="msg-pager pager">
{{{msgPager}}}
</div>
</div>
<div class="right-side">
{{> guang/right-side}}
</div>
{{/ guang}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/header}}
<div class="guang-index-page guang-page yoho-page clearfix">
{{# guang}}
<div class="left-side">
<div id="slider" class="slider">
<ul class="slide-wrapper">
{{#each slider}}
<li>
<a href="{{url}}">
{{#if @first}}
<img src="{{img}}">
{{^}}
<img class="lazy" data-original="{{img}}">
{{/if}}
</a>
</li>
{{/each}}
</ul>
</div>
<div id="pjax-container" class="msg">
<ul class="msg-nav">
{{# msgTypes}}
<li data-type="{{typeId}}" {{#if isActive}}class="actived"{{/if}}>
<a class="pjax-link" href="{{navUrl}}">{{type}}</a>
</li>
{{/ msgTypes}}
</ul>
<div id="msg-list" class="msg-list">
{{# msgs}}
{{> guang/msg}}
{{/ msgs}}
</div>
<div class="msg-pager pager">
{{{msgPager}}}
</div>
</div>
</div>
<div class="right-side">
{{> guang/right-side}}
</div>
{{/ guang}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/header}}
<div class="guang-list-page guang-page yoho-page clearfix">
{{# guang}}
<div class="left-side">
<div class="tag-header">
<span>{{tag}}</span>
关联的文章
</div>
<div id="msg-list" class="msg-list">
{{# msgs}}
{{> guang/msg}}
{{/ msgs}}
</div>
<div class="msg-pager pager">
{{{msgPager}}}
</div>
</div>
<div class="right-side">
{{> guang/right-side}}
</div>
{{/ guang}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/header}}
<div class="home-page yoho-page kids" data-page="kids" data-newarrivls='{"url":"/kids/commodity","pageCount":"4","flag":"kids"}'>
{{# kids}}
{{! 头部banner}}
{{# slide}}
{{>index/slide-banner}}
{{/ slide}}
{{! 优选品牌}}
{{# preferenceBrands}}
{{> index/preference-brand}}
{{/ preferenceBrands}}
{{! 热门分类}}
{{# recommend}}
{{> index/girl-recommend}}
{{/ recommend}}
{{! 单品/广告}}
{{# singlehot}}
{{> index/girl-singlehot}}
{{/ singlehot}}
{{! GIRL KIDS}}
{{# girlkids}}
{{> index/girl-singlehot}}
{{/ girlkids}}
{{! 新品上架}}
{{# newArrivls}}
{{> index/commodity}}
{{/ newArrivls}}
{{/ kids}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/header}}
<div class="home-page yoho-page lifestyle" data-page="lifestyle" data-newarrivls='{"url":"/lifestyle/commodity","pageCount":"4","flag":"lifestyle"}'>
{{# lifestyle}}
{{! 头部banner}}
{{# slide}}
{{>index/slide-banner}}
{{/ slide}}
{{! 优选品牌}}
{{# preferenceBrands}}
{{> index/preference-brand}}
{{/ preferenceBrands}}
{{! 类别楼层遍历}}
{{# category}}
{{> index/category-floor}}
{{/ category}}
{{! 手风琴}}
{{# accordion}}
{{> index/slide-accordion}}
{{/ accordion}}
{{! 单品/广告}}
{{# singlehot}}
{{> index/girl-singlehot}}
{{/ singlehot}}
{{! 新品上架}}
{{# newArrivls}}
{{> index/commodity}}
{{/ newArrivls}}
{{/ lifestyle}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/simple-header}}
<div class="back-page passport-page yoho-page clearfix">
{{# back}}
{{> passport/cover}}
<div class="content">
<div class="back-header clearfix">
<h2 class="title">找回密码</h2>
<span id="country-code" class="country-code">
<em>{{countryName}} +{{countryCode}}</em>
<i class="iconfont">&#xe61d;</i>
</span>
<ul id="country-code-list" class="country-code-list">
{{# countryList}}
<li data-cc="+{{code}}">{{name}} +{{code}}</li>
{{/ countryList}}
</ul>
</div>
<form id="back-form" class="back-form" action="">
<input id="country-code-hide" type="hidden" name="country-code" value="+86">
<ul>
<li class="input-container-li clearfix">
<input id="phone-num" class="input va phone-num" type="text" name="phoneNum" placeholder="邮箱/手机号码" autocomplete="off">
<ul id="tip-panel" class="tip-panel"></ul>
<span id="account-err" class="err-tip hide">
<i></i>
<em>账户名不能为空</em>
</span>
</li>
<li class="input-container-li clearfix">
<input id="captcha" class="input va captcha" type="text" name="captcha" placeholder="验证码" autocomplete="off" maxlength="4">
<img id="captcha-img" class="captcha-img" src="http://www.yohobuy.com/passport/images" alt="">
<a id="change-captcha" class="link change-captcha">换一张</a>
<span id="captcha-err" class="err-tip captcha-err hide">
<i></i>
<em>验证码不能为空</em>
</span>
</li>
<li class="input-container-li clearfix">
<input name="refer" id="refer" type="hidden" value="http%3A%2F%2Fwww.yohobuy.com%2F">
<input id="find-btn" class="btn find-btn disable" type="submit" value="下一步" disabled="">
</li>
</ul>
</form>
</div>
{{/ back}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/simple-header}}
<div class="reset-pwd-page back-page passport-page yoho-page clearfix">
{{# resetPwd}}
{{> passport/cover}}
<div class="content">
<h2 class="title2">重置密码</h2>
<form id="reset-pwd-form" class="reset-pwd-form" method="POST" action="/passport/back/update">
<ul>
<li class="input-container-li po-re">
<input id="pwd" class="input va pwd" type="password" name="pwd" placeholder="新密码" maxlength="20">
<div class="pwd-intensity-container">
<span class="pwd-intensity low">低</span>
<span class="pwd-intensity mid">中</span>
<span class="pwd-intensity high">高</span>
</div>
<div id="pwd-tips" class="pwd-tips hide">
<div class="default" id="pwd-tip1"><i></i>密码只支持6-20位字符</div>
<div class="default" id="pwd-tip2"><i></i>建议由字母、 数字、 符号两种以上组合</div>
</div>
<span id="pwd-err" class="err-tip hide">
<i></i>
<em>请输入密码</em>
</span>
</li>
<li class="input-container-li clearfix po-re">
<input id="re-input" class="input va re-input repwd" type="password" name="re-input" placeholder="再次输入" maxlength="20">
<span id="repwd-err" class="err-tip hide">
<i></i>
<em>请输入密码确认</em>
</span>
</li>
<li class="input-container-li clearfix">
<input type="hidden" name="code" value="159bI6arxsuaPBxG2iV9OE9BrgDnAPiTecUqYh2iUC3ntt6S0eOtxXpVu+jWIlveXx9NRuwS9zdrXzcUyOd+d3ikzYBAo0k">
<input id="reset-pwd-btn" class="btn reset-pwd-btn" type="submit" value="提交" disabled="">
</li>
</ul>
</form>
</div>
{{/ resetPwd}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/simple-header}}
<div class="reset-success-page back-page passport-page yoho-page clearfix">
{{# resetSuccess}}
{{> passport/cover}}
<div class="content">
<div class="success-text">
<i class="iconfont">&#xe620;</i><span>恭喜!</span>密码修改成功,&nbsp;<span id="count-down">5</span>&nbsp;&nbsp;秒后将跳转至首页
</div>
<a class="success-btn" href="/">随便逛逛</a>
</div>
{{/ resetSuccess}}
</div>
{{> layout/footer}}
... ...
{{> layout/simple-header}}
<div class="send-email-page passport-page yoho-page clearfix">
{{# sendEmail}}
{{> passport/cover}}
<div class="content">
<div class="send-tips"><i class="iconfont">&#xe61e;</i>我们已经把验证邮件发送至您的邮箱,请在24小时内通过邮件内的<br>链接继续设置新的密码。</div>
<div class="no-find">没有收到?到您邮箱的垃圾邮件里找找。</div>
<div class="to-my-email">
<a href="http://mail.qq.com" target="_blank" class="btn_b_ar_r">去我的邮箱&gt;</a>
</div>
</div>
{{/ sendEmail}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/simple-header}}
<div class="verification-page back-page passport-page yoho-page clearfix">
{{# verification}}
{{> passport/cover}}
<div class="content">
<form id="verification-form" class="verification-form" method="POST" action="/passport/back/backmobile">
<ul>
<li class="head-title">验证身份</li>
<li class="po-re">
<label class="pn-label">手机号码</label>
<span class="country-code">+86</span>
<span class="phone-num">18115624066</span>
</li>
<li class="po-re">
<input id="captcha" class="input va captcha" type="text" name="captcha">
<input id="send-captcha" class="btn send-captcha" type="button" value="发送验证码" disabled="">
<div id="captcha-tip" class="captcha-tips"><i class="iconfont">&#xe61f;</i>验证码已发送至您的手机,请查收</div>
<span id="err-tip" class="err-tip hide">
<i></i>
<em>请输入验证码</em>
</span>
</li>
<li>
<input name="area" id="area" type="hidden" value="86">
<input name="mobile" id="mobile" type="hidden" value="18115624066">
<input name="captchaPic" id="captchaPic" type="hidden" value="g7ce">
<input name="refer" id="refer" type="hidden" value="">
<input id="next-step" class="btn next-step disable" type="submit" value="下一步" disabled="">
</li>
</ul>
</form>
</div>
{{/ verification}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/simple-header}}
<div class="login-page passport-page yoho-page clearfix">
{{# passport}}
{{> passport/cover}}
<div class="content">
<form id="login-form" method="POST" action="/passport/index/login">
<ul class="login-ul">
<li class="relative clearfix">
<h2 class="title">会员登录</h2>
<span id="country-code" class="country-code right">
<em>{{countryName}} +{{countryCode}}</em>
<i class="iconfont">&#xe600;</i>
<ul id="country-list" class="country-list">
{{#each countryList}}
<li data-cc="{{code}}">{{name}} +{{code}}</li>
{{/each}}
</ul>
</span>
</li>
<li class="relative">
<input id="account" class="account input va" name="account" type="text" placeholder="邮箱/手机号码" autocomplete="off">
<ul id="email-autocomplete" class="email-autocomplete hide"></ul>
<span class="err-tip hide">
<i></i>
<em></em>
</span>
</li>
<li class="relative">
<input id="password" class="password input va" name="password" type="text" placeholder="密码" autocomplete="off" maxlength="20">
<span id="caps-lock" class="caps-lock hide">大写状态开启</span>
<span class="err-tip hide">
<i></i>
<em>请输入密码</em>
</span>
</li>
<li>
<span id="login-btn" class="login-btn btn">登录</span>
</li>
<li class="other-opts">
<span class="remeber-me">
<i class="iconfont">&#xe613;</i>
记住登录状态
</span>
<span class="right">
<a class="forget-password" href="{{forgetPwd}}">忘记密码?</a>
|
<a class="fast-reg" href="{{fastReg}}">快速注册</a>
</span>
</li>
<li class="third-party-login">
<a href="{{qqLogin}}">
<span class="icon qq"></span>
</a>
<a href="{{weiboLogin}}">
<span class="icon weibo"></span>
</a>
<a href="{{alipayLogin}}">
<span class="icon alipay"></span>
</a>
<a href="{{doubanLogin}}">
<span class="icon douban"></span>
</a>
<a href="{{renrenLogin}}">
<span class="icon renren"></span>
</a>
</li>
</ul>
<input id="country-code-hide" name="countryCode" type="hidden" value="{{countryCode}}">
</form>
</div>
{{/ passport}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/header}}
<div class="login-page passport-page yoho-page clearfix">
{{# passport}}
{{> passport/cover}}
<div class="content">
<div class="register-page">
<form id="register-form" class="register-form" method="POST" action="{{actionUrl}}" autocomplete="off">
<ul>
<li class="clearfix">
<select id="region" class="region" name="region">
{{#each region}}
<option {{#if selected}}selected="selected"{{/if}} value="{{id}}">{{name}}</option>
{{/each}}
</select>
</li>
<li class="clearfix" data-index="0">
<span id="country-code" class="country-code">{{location}}</span>
<input value="" id="phone-num" class="input va phone-num" type="text" name="phoneNum" placeholder="请输入手机号码" autocomplete="off">
</li>
<li class="w330 clearfix" data-index="1">
<input id="captcha" class="input va captcha" type="text" name="captcha" placeholder="图形验证码" autocomplete="off" maxlength="4">
<img id="captcha-img" class="captcha-img" src="{{captchaUrl}}" alt="">
<a class="link change-captcha">换一张</a>
</li>
<li class="clearfix" data-index="2">
<input id="msg-captcha" class="input va msg-captcha" type="text" name="msgCaptcha" placeholder="短信验证码" autocomplete="off" maxlength="4">
<input id="send-captcha" class="btn send-captcha disable" type="button" value="获取短信验证码">
<span id="msg-tip" class="hide msg-tip">短信验证码已发送至您的手机,请查收</span>
</li>
<li class="clearfix" data-index="3">
<input id="pwd" class="input va pwd" name="pwd" placeholder="设置密码" autocomplete="off" maxlength="20" type="password">
<div class="pwd-intensity-container">
<span class="pwd-intensity low">低</span>
<span class="pwd-intensity mid">中</span>
<span class="pwd-intensity high">高</span>
</div>
<div id="pwd-tips" class="hide pwd-tips">
<div class="default" id="pwd-tip1"><i></i>密码只支持6-20位字符</div>
<div class="default" id="pwd-tip2"><i></i>建议由字母、 数字、 符号两种以上组合</div>
</div>
</li>
<li class="items-container clearfix">
<input id="agree-terms" class="agree-terms" type="checkbox" checked="">
<span>
我已阅读并同意遵守
<a class="link go-yoho-items" href="{{itemUrl}}">YOHO!有货服务条款</a>
</span>
</li>
<li class="clearfix">
<input name="refer" id="refer" type="hidden" value="{{referUrl}}">
<input id="register-btn" class="btn register-btn disable" type="submit" value="立即注册" disabled="">
</li>
<li class="quick-login-container">
我已注册YOHO!有货账号
<a class="link go-login" href="{{loginUrl}}">快速登录</a>
</li>
</ul>
<div id="err-tip" class="err-tip hide">
<span></span>
<b></b>
</div>
</form>
</div>
</div>
{{/ passport}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/header}}
<div class="hotrank-page home-page yoho-page">
{{# hotrank}}
{{! 头部banner}}
{{# slide}}
{{> index/slide-banner}}
{{/ slide}}
{{! 人气单品}}
{{# popular}}
{{> index/floor-header}}
<div class="popular-goods">
<div class="popular-list clearfix">
{{# list}}
<li class="popular-item{{@index}}">
<div class="item-img">
<a target="_blank" href="{{href}}"><img class="lazy" data-original="{{img}}"></a>
<i class="polular-icon">{{rank}}</i>
</div>
<div class="item-content">
<h2>{{title}}</h2>
<p>¥{{# price}}<span>{{.}}</span>{{/ price}{{sPrice}}</p>
</div>
</li>
{{/ list}}
</div>
</div>
{{/ popular}}
{{! 热门品牌}}
{{# hotBrands}}
{{> index/floor-header}}
<div class="hot-brands logo-brand clearfix"></div>
{{/ hotBrands}}
{{! 一周热卖}}
{{# hotWeek}}
{{> index/floor-header}}
<div class="hot-week">
<div class="hot-cate">
<ul class="clearfix">
{{# nav}}
<li data-sid="{{sid}}">
<a href="javascript:;">{{textCn}}</a>
</li>
{{/ nav}}
</ul>
</div>
<div class="hot-week-list clearfix">
{{# list}}
<!-- <li>
<div class="item-img">
<a target="_blank" href="{{url}}"><img class="lazy" data-original="{{img}}"></a>
<i class="polular-icon">{{rank}}</i>
</div>
<div class="item-content">
<h2>{{title}}</h2>
<p>{{# price}}<span>{{.}}</span>{{/ price}}{{sPrice}}</p>
</div>
</li> -->
{{> product/good}}
{{/ list}}
</div>
<div class="floatlayer">
<ul>
{{# nav}}
<li data-sid="{{sid}}">
<a href="javascript:;"><span>{{textCn}}</span></a>
</li>
{{/ nav}}
</ul>
</div>
</div>
{{/ hotWeek}}
{{/ hotrank}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/header}}
<div class="product-list-page product-page yoho-page">
{{# list}}
{{# brandBanner}}
<div class="brand-banner">
<div class="banner-img" style="height: {{bannerHeight}}px;background: url({{banner}})"></div>
<div class="opt-wrap">
<p class="opt center-content">
<a href="{{brandHome}}">
<i class="iconfont">&#xe617;</i>
品牌首页
</a>
<a href="{{brandIntro}}">
<i class="iconfont">&#xe618;</i>
品牌介绍
</a>
<span id="brand-favor" class="brand-favor">
<i class="iconfont{{#if coled}} coled{{/if}}">&#xe616;</i>
</span>
</p>
</div>
</div>
{{/ brandBanner}}
<div class="center-content clearfix">
{{> layout/path-nav}}
{{# brandAbout}}
<div class="brand-about">
{{{brandIntro}}}
</div>
{{^}}
<div class="list-left pull-left">
{{> product/left-content}}
</div>
<div class="list-right pull-right">
{{# shopEntry}}
<div class="shop-entry clearfix">
<a class="pull-left" href="{{home}}">
<img class="logo" src="{{logo}}">
</a>
<div class="name pull-left">
<a class="shop-name" href="{{home}}">{{shopName}}</a>
<p class="sorts">
{{#each sort}}
<a href="{{href}}">{{name}}</a>
{{#unless @last}}
/
{{/unless}}
{{/each}}
</p>
</div>
<a class="entry-btn pull-right" href="{{home}}">
进入品牌店铺
<span class="iconfont">&#xe601;</span>
</a>
</div>
{{/ shopEntry}}
{{# sortIntro}}
<div class="sort-intro clearfix">
<div class="texts pull-left">
<p class="name">{{name}}</p>
<p class="en-name">{{enName}}</p>
<p class="desc">{{description}}</p>
</div>
<img class="pull-right img" src="{{img}}">
</div>
{{/ sortIntro}}
{{> product/standard-content}}
{{> product/latest-walk}}
</div>
{{/ brandAbout}}
</div>
{{/ list}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/header}}
<div class="new-sale-page product-page yoho-page">
{{# newSale}}
{{# saleBanner}}
<div class="banner-img" style="height: {{bannerHeight}}px;background:url({{img}}) no-repeat top center;"></div>
{{/ saleBanner}}
<div class="center-content clearfix">
{{> layout/path-nav}}
{{# saleTitle}}
<div class="header-title">
{{name}}
<p class="line-through"></p>
<p class="count-wrap">
<span class="count">共{{count}}个结果</span>
</p>
</div>
{{/ saleTitle}}
<div class="list-left pull-left">
{{> product/left-content}}
</div>
<div class="list-right pull-right">
{{# newMain}}
<div class="new-banner">
<a href="{{bannerHref}}">
<img src="{{banner}}">
</a>
</div>
<div class="new-brands clearfix">
<span class="iconfont pre">&#xe607;</span>
<div class="brands-wrap">
<ul class="brands">
{{# brands}}
<li>
<a href="{{href}}">
<img src="{{logo}}">
</a>
</li>
{{/ brands}}
</ul>
</div>
<span class="iconfont next">&#xe608;</span>
</div>
<div class="new-floor-title">
<span class="date">{{date}}</span>
<span class="title">{{title}}</span>
</div>
{{/ newMain}}
{{> product/standard-content}}
</div>
</div>
{{/ newSale}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/header}}
<div class="product-search-page product-page yoho-page center-content">
{{# search}}
{{> layout/path-nav}}
{{> product/standard-content}}
{{> product/latest-walk}}
{{/ search}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
{{> layout/header}}
<div class="product-detail-page yoho-page">
{{# detail}}
{{# banner}}
<div class="brand-banner" style="background:{{bgColor}}{{#if bgImg}} url({{bgImg}}){{/if}}">
<div class="center-content clearfix">
<a class="pull-left" href="{{homeUrl}}">
<img src="{{logo}}">
</a>
<div class="opt pull-right">
<a class="home" href="{{homeUrl}}">
<span class="iconfont">&#xe617;</span>
</a>
<span id="brand-favour" class="brand-fav">
<i class="iconfont{{#if coled}} coled{{/if}}">&#xe616;</i>
</span>
</div>
</div>
</div>
{{/ banner}}
<div class="center-content">
{{> layout/path-nav}}
{{# goodInfo}}
<div class="main clearfix" data-skn="{{skn}}">
<div class="pull-left imgs clearfix">
<div class="pull-left img">
<div class="tags clearfix">
{{# tags}}
{{# isNew}}
<span class="good-tag new-tag">NEW</span>
{{/ isNew}}
{{# isReNew}}
<span class="good-tag renew-tag">再到着</span>
{{/ isReNew}}
{{# isSale}}
<span class="good-tag sale-tag">SALE</span>
{{/ isSale}}
{{# isNewFestival}}
<span class="good-tag new-festival-tag">新品节</span>
{{/ isNewFestival}}
{{# isLimit}}
<span class="good-tag limit-tag">限量商品</span>
{{/ isLimit}}
{{# isYearEndPromotion}}
<span class="good-tag yep-tag">年终大促</span>
{{/ isYearEndPromotion}}
{{# isYearMidPromotion}}
<span class="good-tag ymp-tag">年中热促</span>
{{/ isYearMidPromotion}}
{{# isFew}}
<p class="good-tag few-tag">即将售罄</p>
{{/ isFew}}
{{/ tags}}
</div>
<img id="img-show" class="img-show" src="{{img}}">
</div>
<div id="thumbs" class="pull-right thumbs">
{{# colors}}
<div class="thumb-wrap{{#unless focus}} hide{{/unless}}">
{{#if focus}}
{{# thumbs}}
<a href="{{url}}">
<img class="thumb" src="{{img}}" data-shower="{{shower}}">
</a>
{{/ thumbs}}
{{^}}
{{# thumbs}}
<a href="{{url}}">
<img class="thumb lazy" data-original="{{img}}" data-shower="{{shower}}">
</a>
{{/ thumbs}}
{{/if}}
</div>
{{/ colors}}
</div>
</div>
<div class="pull-right infos">
<p class="name">
{{name}}
</p>
<a class="brand-name" href="{{brandUrl}}">{{brandName}}</a>
<p class="market-price {{#if salePrice}}with-sale{{/unless}}">
<span class="title">市场价:</span>
<span class="price">¥{{marketPrice}}</span>
</p>
{{#if salePrice}}
<p class="sale-price">
<span class="title">促销价:</span>
<span class="price">¥{{salePrice}}</span>
</p>
{{/if}}
{{#if activity}}
<ul class="activity">
{{#each activity}}
<li>
{{#if activityImg}}
<a class="img-link" href="{{url}}">
<img src="{{activityImg}}">
</a>
{{^}}
<span class="ac-type">{{type}}</span>
<span class="ac-des">【{{des}}】</span>
{{/if}}
</li>
{{/each}}
</ul>
{{/if}}
<div class="trade-content">
<div id="type-chose" class="type-chose">
<div class="chose-color row clearfix">
<span class="title pull-left">选颜色:</span>
<ul class="colors pull-left clearfix">
{{#each colors}}
<li class="{{#if focus}}focus{{/if}} {{#if disable}}disable{{/if}} pull-left" title="{{title}}">
<img src="{{src}}">
</li>
{{/each}}
</ul>
</div>
<div class="chose-size row clearfix">
<span class="title pull-left">选尺码:</span>
<div id="sizes" class="size-wrapper pull-left clearfix">
{{#each colors}}
<ul class="size {{#unless focus}}hide{{/unless}} clearfix">
{{#each size}}
<li {{#unless num}}class="disable"{{/unless}} data-title="{{title}}" data-sku="{{sku}}" data-num="{{num}}">{{name}}</li>
{{/each}}
</ul>
{{/each}}
<span class="size-ruler"></span>
<span class="size-warn warn-tip hide">
<i class="iconfont">&#xe62c;</i>
请选择尺码
</span>
<p class="color-size-tip hide"></p>
</div>
</div>
<div class="chose-count row clearfix">
<span class="title pull-left">选数量:</span>
<div class="num-wraper pull-left clearfix">
<span id="num" class="num pull-left">1</span>
<span class="minus-plus pull-left">
<i id="plus-num" class="plus iconfont">&#xe610;</i>
<i id="minus-num" class="minus iconfont">&#xe600;</i>
</span>
<span id="num-warn" class="num-warn warn-tip hide">
<i class="iconfont">&#xe62c;</i>
库存不足
</span>
</div>
</div>
<p class="row">
<span id="add-to-cart" class="add-to-cart">
<i class="iconfont">&#xe628;</i>
添加到购物车
</span>
<span id="sold-out" class="sold-out hide">
<i class="iconfont">&#xe62d;</i>
已售罄
</span>
<span id="collect-product" class="{{#if coled}}coled {{/if}}collect-product">
<i class="iconfont">&#xe616;</i>
{{#if coled}}
<em>已收藏</em>
{{^}}
<em>收藏商品</em>
{{/if}}
</span>
</p>
<p class="share-row">
<span class="title pull-left">分享商品:</span>
<span class="share-wrapper pull-left clearfix">
<i class="weibo" data-type="weibo" title="分享到新浪微博"></i>
<i class="weixin" data-type="weixin" title="分享到微信朋友圈"></i>
<i class="qweibo" data-type="qweibo" title="分享到腾讯微博"></i>
<i class="qzone" data-type="qzone" title="分享到QQ空间"></i>
<i class="qq" data-type="qq" title="分享到QQ好友"></i>
<i class="renren" data-type="renren" title="分享到人人"></i>
<i class="douban" data-type="douban" class="分享到豆瓣"></i>
</span>
</p>
</div>
<div id="balance" class="balance">
<p class="success-tip">商品已成功添加到购物车!</p>
<p class="cart-total">购物车一共有<span id="cart-num">0</span>件商品</p>
<p class="balance-btns">
<a class="go-cart" href="{{goCartUrl}}">
去购物车结算
<i class="iconfont">&#xe601;</i>
</a>
<span id="keep-shopping" class="keep-shopping">
继续购物
</span>
</p>
</div>
</div>
</div>
</div>
{{/ goodInfo}}
<div class="other-infos">
<div class="description-material info-block">
<p class="block-title">
<span class="title cur">商品信息 DESCRIPTION</span>
<span class="sep">|</span>
<span class="title">材质洗涤 MATERIALS</span>
</p>
<div class="description-content">
{{# description}}
<ul class="basic clearfix">
{{# basic}}
<li>
{{key}}: {{value}}
</li>
{{/ basic}}
</ul>
{{#if comfort}}
<ul class="comfort clearfix">
{{# comfort}}
<li class="pull-left">
<span class="comfort-title">{{name}}:</span>
<span class="min-des">{{minDes}}</span>
{{# blocks}}
<span class="comfort-block {{#if cur}}cur{{/if}}"></span>
{{/ blocks}}
<span class="max-des">{{maxDes}}</span>
</li>
{{/ comfort}}
</ul>
{{/if}}
{{/ description}}
</div>
<div class="material-content">
{{# material}}
{{#if detail}}
<ul class="material-detail clearfix">
{{# detail}}
<li>
<img src="{{img}}">
<p class="name">{{name}}<br>{{enName}}</p>
<p class="text">{{text}}</p>
</li>
{{/ detail}}
</ul>
{{/if}}
{{#if wash}}
<ul class="wash">
{{# wash}}
<li>
<img class="wash-icon" src="{{img}}">
<p class="wash-name">{{name}}</p>
</li>
{{/ wash}}
</ul>
{{/if}}
{{/ material}}
</div>
</div>
<div class="size-info info-block">
<p class="block-title">
<span class="title cur">尺码信息 SIZE INFO</span>
</p>
{{# size}}
<table class="size-table">
<thead>
<tr>
{{# thead}}
<th width="{{width}}">{{name}}</th>
{{/ thead}}
</tr>
</thead>
<tbody>
{{# tbody}}
<tr>
{{#each .}}
<td>{{.}}</td>
{{/each}}
</tr>
{{/ tbody}}
</tbody>
</table>
<p class="size-tip">
以上尺寸为实物人工测量,因测量方式不同会有1-2CM误差,相关数据仅作参考,以收到实物为准。 单位:CM
</p>
<p class="size-tip">
参考尺码因衣服版型、剪裁不同会有误差,仅供参考
</p>
{{#if sizeImg}}
<img class="size-img" src="{{sizeImg}}">
{{/if}}
{{/ size}}
</div>
{{#if reference}}
<div class="reference info-block">
<p class="block-title">
<span class="title cur">模特试穿 REFERENCE</span>
</p>
{{# reference}}
<table class="reference-table">
<thead>
<tr>
{{# thead}}
<th width="{{width}}">{{name}}</th>
{{/ thead}}
</tr>
</thead>
<tbody>
{{# tbody}}
<tr>
{{#each .}}
<td>
{{#if @first}}
<img class="avatar" src="{{.}}">
{{^}}
{{.}}
{{/if}}
</td>
{{/each}}
</tr>
{{/ tbody}}
</tbody>
</table>
{{/ reference}}
<p class="size-tip">
模特试穿中身高单位:CM,体重单位:KG,三围单位:CM
</p>
</div>
{{/if}}
<div class="details info-block">
<p class="block-title">
<span class="title cur">商品详情 DETAILS</span>
</p>
<div class="details-html">
{{{details}}}
</div>
</div>
{{# consultComment}}
<div class="consult-comment info-block">
<p class="block-title">
<span class="title">顾客咨询({{consultNum}})</span>
<span class="sep">|</span>
<span class="title cur">购买评价({{commentNum}})</span>
</p>
<div class="comments cc-content">
<h2>购买评价({{commentNum}})</h2>
<ul id="comments-ul">
{{# comments}}
<li>
<div class="user-info clearfix">
<img class="user-avatar pull-left" src="{{avatar}}">
<p>
<span class="name">{{userName}} </span>
购买了{{color}}/{{size}}
<br>
<span class="date">{{date}}</span>
</p>
</div>
<p class="comment">{{comment}}</p>
</li>
{{/ comments}}
</ul>
{{#if hasMoreComments}}
<p class="more-wrap">
<span class="load-more-comments load-more">
加载更多
<i class="iconfont">&#xe61d;</i>
</span>
</p>
{{/if}}
<p class="btn-wrap">
<a class="btn" href="{{commentUrl}}" target="_blank">
<i class="iconfont">&#xe62a;</i>
我要评论
</a>
</p>
</div>
<div class="consults cc-content">
<h2>顾客咨询({{consultNum}})</h2>
<ul id="consults-ul">
{{# consults}}
<li>
<div class="user-info clearfix">
<img class="user-avatar" src="{{avatar}}">
<p>
<span class="question">{{question}}</span>
<br>
<span class="date">{{date}}</span>
</p>
</div>
<p class="consult">{{answer}}</p>
</li>
{{/ consults}}
</ul>
{{#if hasMoreConsults}}
<p class="more-wrap">
<span class="load-more-consults load-more">
加载更多
<i class="iconfont">&#xe61d;</i>
</span>
</p>
{{/if}}
<p class="btn-wrap">
<span id="consults-btn" class="btn">
<i class="iconfont">&#xe62a;</i>
我要咨询
</span>
</p>
<div class="new-consult hide">
<textarea class="my-consult"></textarea>
<span class="consult-warn warn-tip hide">
<i class="iconfont">&#xe62c;</i>
请输入咨询内容
</span>
<div class="captcha-row">
<input class="captcha" type="text">
<img class="captcha-img" src="http://www.yohobuy.com/passport/images?g=consult">
<span class="captcha-warn warn-tip hide">
<i class="iconfont">&#xe62c;</i>
<em>请输入验证码</em>
</span>
</div>
<span id="submit-consult" class="btn submit-consult">提交咨询</span>
</div>
<div class="consult-success hide">
<p>
<span class="iconfont">&#xe61a;</span>
咨询成功,请等待客服回复
</p>
</div>
</div>
</div>
{{/ consultComment}}
<div class="after-service">
<p id="after-service-switch" class="after-service-switch">
<span class="iconfont">&#xe62b;</span>
售后服务
<span class="iconfont triangle">&#xe604;</span>
</p>
<div class="after-service-content info-block">
<div class="block-title">
<span class="title cur">售后服务 AFTER SERVICE</span>
</div>
<div class="img-1"></div>
<div class="img-2"></div>
<div class="text">
<h4>退换货承诺</h4>
<p>自您签收商品7日内可以退货,15日内可以换货,在商品不影响二次销售的情况下,YOHO!有货将为您办理退换货服务,请在网站提交"退换货"申请。需要说明的是:非质量问题的退换货,来回运费由您承担。</p>
<h4>退换货方式</h4>
<p>
针对国内大中型城市,YOHO!有货开通了<span class="orange">"上门换货"</span>服务,上门服务区域及费用请联系客服中心;若您所在的区域不在上门换货范围内,请您选择普通快递将商品、内包装、赠品及发货单等一并寄回。质量问题的退换货,目前不支持运费到付款业务,请您先垫付运费寄回。如需退换货,请致电客服电话:400-889-9646
</p>
<h4>退换货邮寄地址</h4>
<p>
南京市江宁区江宁经济技术开发区苏源大道87号YOHO!有货物流中心东一楼 收件人:YOHO!有货 邮编:211106
<br>
YOHO!有货客服热线:400-889-9646  客服邮箱:<a href="mailto:service@yoho.cn">service@yoho.cn</a>
<br>
有疑问请联系我们,我们将为您提供最优质的产品和服务。
</p>
</div>
</div>
</div>
<div class="service"></div>
<div class="info-block">
<p class="block-title">
<span class="title cur">最近浏览 RECENT REVIEW</span>
</p>
<ul class="recent-view clearfix">
{{# recentView}}
<li>
<a href="{{url}}">
<img src="{{img}}">
</a>
<a class="name" href="{{url}}">{{name}}</a>
<p class="price">
<span class="market-price {{#if salePrice}}has-sale{{/if}}">¥{{marketPrice}}</span>
{{#if salePrice}}
<span class="sale-price">¥{{salePrice}}</span>
{{/if}}
</p>
</li>
{{/ recentView}}
</ul>
</div>
</div>
</div>
{{/ detail}}
</div>
{{> layout/footer}}
\ No newline at end of file
... ...
<div class="msg-content clearfix" data-id="{{id}}">
<div class="msg-img">
<div class="classification">
{{classification}}
</div>
{{#if isReco}}
<div class="reco"></div>
{{/if}}
<a href="{{url}}">
<img class="lazy{{#if isSquareImg}} square{{/if}}" data-original="{{img}}">
</a>
</div>
<div class="msg-info">
<a class="msg-title" href="{{url}}">{{title}}</a>
<p class="msg-app">
<a href="{{editorUrl}}">
<span class="author">{{author}}</span>
</a>
<span class="publish-time">
<i class="iconfont">&#xe625;</i>
{{pTime}}
</span>
<span class="page-view">
<i class="iconfont">&#xe627;</i>
{{pView}}
</span>
</p>
<p class="content">{{content}}</p>
<div class="footer">
<div class="tags">
{{# tags}}
<a class="msg-tag" href="{{url}}" target="_blank">{{tag}}</a>
{{/ tags}}
</div>
<div class="like-comment">
<span class="like">
<i class="iconfont like-icon{{#if liked}} liked{{/if}}">&#xe626;</i>
{{#if like}}<b class="like-num">(<em class="num">{{like}}</em>)</b>{{/if}}
</span>
<span class="comment">
<i class="iconfont">&#xe623;</i>
{{# comment}}
({{.}})
{{/ comment}}
</span>
</div>
</div>
</div>
</div>
\ No newline at end of file
... ...
<div class="ex-reco">
<h1 class="ex-reco-title">精彩推荐</h1>
<div id="ex-reco-list" class="ex-reco-list">
{{# exRecos}}
<div class="ex-reco-item clearfix">
<a class="ex-reco-img" href="{{url}}" target="_blank">
<span class="bg-img" style="background-image:url({{img}})"></span>
</a>
<a href="{{url}}" target="_blank">
<p class="ex-reco-context">{{title}}</p>
</a>
</div>
{{/ exRecos}}
</div>
</div>
<div class="hot">
<h1 class="hot-title">热门标签</h1>
<div class="hot-tag-list">
{{#hotTags}}
<a class="hot-tag" href="{{url}}">
{{tagName}}
</a>
{{/hotTags}}
</div>
</div>
<div class="ads">
{{# ads}}
<a class="ad" href="{{url}}">
<img class="lazy" data-original="{{img}}">
</a>
{{/ ads}}
</div>
\ No newline at end of file
... ...
{{# tplrecommend}}
{{> index/floor-header}}
<div class="tpl-recommend clearfix">
<div class="tpl-body clearfix">
<div class="tpl-nav">
<div class="tpl-keywords">
{{#each keyword}}
<a class="keywords{{@index}}" title="{{name}}" href="{{href}}"><img class="lazy" data-original="{{img}}"/></a>
{{/ keyword}}
</div>
<div class="tpl-category clearfix">
{{#each category}}
<a href="{{href}}">{{name}}</a>
{{/ category}}
</div>
</div>
<div class="tpl-brands clearfix">
<ul>
{{#each brands}}
<li><a title="{{name}}" href="{{href}}"><img class="lazy" data-original="{{img}}"/></a></li>
{{/each}}
</ul>
</div>
<div class="tpl-types clearfix">
<ul>
{{#each types}}
<li><a title="{{name}}" href="{{href}}"><img class="lazy" data-original="{{img}}"/></a></li>
{{/each}}
</ul>
</div>
</div>
<div class="tpl-products clearfix">
<ul>
{{#each products}}
<li><a href="{{href}}" title="{{name}}"><img class="lazy" data-original="{{img}}"/></a></li>
{{/each}}
</ul>
</div>
</div>
{{/ tplrecommend}}
... ...
{{> index/floor-header}}
<div class="singlehot clearfix">
<ul>
{{#each imgHot}}
<li><a class="impo{{@index}}" href="{{url}}"><img class="lazy" data-original="{{img}}"/></a></li>
{{/each}}
</ul>
</div>
... ...
{{> index/floor-header}}
<div class="categorys-list">
<ul class="clearfix">
{{# list}}
<li class="cate-item{{@index}}">
<a href="{{href}}">
<img class="lazy" data-original="{{img}}" alt="">
</a>
</li>
{{/ list}}
</ul>
</div>
\ No newline at end of file
... ...
{{> index/floor-header}}
<div class="commodity clearfix" id="newarrivals">
<div class="commodity-list">
<ul class="clearfix">
</ul>
</div>
<div class="loading">
{{# navs}}
<a href="{{href}}">Loading...</a>
{{/ navs}}
</div>
</div>
\ No newline at end of file
... ...
<div class="floor-header clearfix">
<h2 class="floor-title">{{name}}</h2>
{{#if navs}}
<ul class="header-navs">
{{# navs}}
<li data-classify="{{id}}">
<a target="_blank" href="{{href}}">{{name}}</a>
</li>
{{/ navs}}
</ul>
{{/if}}
</div>
\ No newline at end of file
... ...
{{# tplrecommend}}
{{> index/floor-header}}
<div class="tpl-recommend clearfix">
<div class="tpl-body clearfix">
<div class="tpl-nav">
<div class="tpl-keywords">
{{#each keyword}}
<a class="keywords{{@index}}" title="{{name}}" href="{{href}}"><img class="lazy" data-original="{{img}}"/></a>
{{/ keyword}}
</div>
<div class="tpl-category clearfix">
{{#each category}}
<a href="{{href}}">{{name}}</a>
{{/ category}}
</div>
</div>
<div class="tpl-brands clearfix">
{{#each brands}}
<a title="{{name}}" href="{{href}}"><img class="lazy" data-original="{{img}}"/></a>
{{/each}}
</div>
<div class="tpl-types clearfix">
<ul>
{{#each types}}
<li><a title="{{name}}" href="{{href}}"><img class="lazy" data-original="{{img}}"/></a></li>
{{/each}}
</ul>
</div>
</div>
</div>
{{/ tplrecommend}}
\ No newline at end of file
... ...
{{> index/floor-header}}
<div class="commodity clearfix">
<div class="commodity-list">
<ul class="clearfix">
{{#each imgHot}}
<li>
<a href="{{url}}"><div class="commodity-img">
{{# tip}}
<i class="top">{{.}}</i>
{{/ tip}}
<img class="lazy" data-original="{{img}}"/></div>
<p class="commodity-name">{{name}}</p>
<p class="commodity-price"><span>¥{{price}}</span></p>
</a>
</li>
{{/each}}
</ul>
</div>
<div class="commodity-brands clearfix">
{{#each bands}}
<a href="{{url}}" title="{{name}}"><img class="lazy" data-original="{{img}}"/></a>
{{/each}}
</div>
</div>
... ...
<!-- {{> index/floor-header}}
<div class="preference-brand">
<div class="img-slider-wrapper clearfix">
<div class="img-brand-switch">
<a class="prev iconfont" href="javascript:;">&#xe60f;</a>
<a class="next iconfont" href="javascript:;">&#xe60e;</a>
</div>
<div class="img-container-landscape">
<ul class="img-list">
{{# slider}}
<li class="img-item">
<a href="{{href}}"> <img src="{{img}}" alt="{{alt}}"></a>
</li>
{{/ slider}}
</ul>
</div>
</div>
<div class="preference-brand-list clearfix">
{{#list}}
<div class="preference-brand-item">
<a href="{{href}}">
<img class="lazy" data-original="{{img}}"></a>
</div>
{{/list}}
<a class="preference-more" href="{{moreBrands}}">MORE&gt;</a>
</div>
</div> -->
{{! 楼层头部}}
{{> index/floor-header}}
<div class="preference-brand">
<div class="img-slider-wrapper clearfix">
<div class="img-brand-switch">
<a class="prev iconfont" href="javascript:;">&#xe60f;</a>
<a class="next iconfont" href="javascript:;">&#xe60e;</a>
</div>
<div class="img-container-landscape">
<ul class="img-list">
{{# slider}}
<li class="img-item">
<a href="{{href}}"> <img src="{{img}}" alt="{{alt}}"></a>
</li>
{{/ slider}}
</ul>
</div>
</div>
<div class="logo-brand">
<ul class="clearfix">
{{# list}}
<li>
<a href="{{href}}">
<img class="lazy" data-original="{{img}}" alt="">
</a>
</li>
{{/ list}}
</ul>
</div>
<!-- <div class="hot-brands clearfix">
<div class="brands-list">
<ul class="clearfix">
{{# list}}
<li>
<a target="_blank" href="{{href}}">
<img class="lazy" data-original="{{img}}">
</a>
</li>
{{/ list}}
</ul>
</div>
<div class="brands-control">
<p class="control-btn">
<a class="iconfont prev" href="javascript:;">&#xe60a;</a>
<a class="iconfont next" href="javascript:;">&#xe609;</a>
</p>
<p class="all-brands">
<a target="_blank" href="{{allBrands}}">
MORE>
</a>
</p>
</div>
</div> -->
<!--
<div class="preference-brand-list clearfix">
{{#list}}
<div class="preference-brand-item">
<a href="{{url}}">
<img class="lazy" data-original="{{img}}"></a>
</div>
{{/list}}
<a class="preference-more" href="{{moreBrands}}">MORE&gt;</a>
</div>-->
</div>
\ No newline at end of file
... ...
{{> index/floor-header}}
<div class="slide-accordion clearfix">
<ul>
{{#each slide}}
<li><a title="{{name}}" href="{{href}}"><img class="lazy" data-original="{{img}}"/></a></li>
{{/each}}
</ul>
</div>
... ...
<div class="slide-container">
<div class="slide-wrapper">
<ul>
{{# list}}
<li>
<a href="{{href}}">
<img class="lazy" data-original="{{img}}" alt="">
</a>
</li>
{{/ list}}
</ul>
<div class="slide-switch">
<a class="prev" href="javascript:;">
<span class="iconfont">&#xe60c;</span>
</a>
<a class="next" href="javascript:;">
<span class="iconfont">&#xe60b;</span>
</a>
</div>
</div>
{{#if pagination}}
<div class="thumb-pagination">
<ul class="clearfix">
{{# pagination}}
<li>
<a href="{{href}}"></a>
<img src="{{img}}" alt="">
</li>
{{/ pagination}}
</ul>
</div>
{{/if}}
</div>
\ No newline at end of file
... ...
{{> layout/page-footer}}
<script src="http://localhost:8000/static/js/sea.js?nowrap"></script>
<script>
seajs.config({
base: 'http://localhost:8000/'
});
</script>
{{> layout/use}}
</body>
</html>
\ No newline at end of file
... ...
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Cache-Control" content="no-siteapp" />
<meta name="renderer" content="webkit">
<link rel="shortcut icon" href="http://www.yohobuy.com/favicon.ico" type="image/x-icon" />
<meta name="keywords" content="{{keywords}}">
<meta name="description" content="{{description}}">
<title>{{title}}</title>
<!-- [if (gte IE 6)&(lte IE 8)>
<script src="http://cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
<link rel="stylesheet" href="http://webstatic.dev.yohobuy.com/css/index.css">
</head>
<body>
{{> layout/page-header}}
\ No newline at end of file
... ...
<div class="yoho-footer">
{{#if footerTop}}
<div class="footertop">
<div class="index-foot">
<dl class="center-content clearfix">
<dd>
<div class="foot-panel">
<div class="title">
<div class="title-line"></div>
<div class="text">
<span>有货SERVICES</span>
</div>
</div>
<div id="foot-services">
<ul class="two-dim clearfix">
<li class="left">
<img class="dim-img lazy" data-original="http://img11.static.yhbimg.com/adpic/2014/03/20/16/01863b297051f11c2be833785566cf11d1.png">
<p>YOHO!有货</p>
</li>
<li class="left">
<img class="dim-img lazy" data-original="http://img12.static.yhbimg.com/adpic/2014/04/11/14/022ddc2b6d6b2fcabee8cdc03735e5687e.jpg">
<p>微信</p>
</li>
<li class="left">
<img class="dim-img lazy" data-original="http://img13.static.yhbimg.com/adpic/2014/03/20/16/02e69d0afa222cf173d17411fd04be380e.png">
<p>微博</p>
</li>
</ul>
</div>
</div>
<p class="item-nav center">
<span class="iconfont cur" key="0">&#xe619;</span>
</p>
</dd>
<dd>
<div id="feed-back-box-list" class="foot-panel">
<div class="title">
<div class="title-line"></div>
<div class="text">
<span>意见反馈</span>
</div>
</div>
<ul class="vote clearfix">
<li key="0">
<form class="feed-back-form" action="#">
<div>您喜欢有货的新版吗?</div>
<div class="vote-item clearfix">
<p>
<input type="radio" name="solution" value="33">非常喜欢
</p>
<p>
<input type="radio" name="solution" value="34">喜欢
</p>
<p>
<input type="radio" name="solution" value="35">一般般
</p>
<p>
<input type="radio" name="solution" value="36">不喜欢
</p>
<p>
<input type="radio" name="solution" value="37">非常不喜欢
</p>
</div>
<div>
<span class="feed-back-btn button">提交</span>
</div>
<input class="question-id" type="hidden" name="question_id" value="38">
<input class="feedback-id" type="hidden" name="feedback_id" value="5">
</form>
</li>
<li class="hide" key="1">
<form class="feed-back-form" action="#">
<div>您可以方便的找到想查看的内容吗?</div>
<div class="vote-item clearfix">
<p>
<input type="radio" name="solution" value="38">非常方便
</p>
<p>
<input type="radio" name="solution" value="39">方便
</p>
<p>
<input type="radio" name="solution" value="40">一般般
</p>
<p>
<input type="radio" name="solution" value="41">不方便
</p>
<p>
<input type="radio" name="solution" value="42">非常不方便
</p>
</div>
<div>
<span class="feed-back-btn button">提交</span>
</div>
<input class="question-id" type="hidden" value="39">
<input class="feedback-id" type="hidden" value="5">
</form>
</li>
<li class="hide" key="2">
<form class="feed-back-form" action="#">
<div>您对新版还有哪些意见或建议?</div>
<textarea name="answer" id="feedback-answer"></textarea>
<div>
<span class="feed-back-btn button">提交</span>
</div>
<input class="question-id" type="hidden" value="37">
<input class="feedback-id" type="hidden" value="5">
</form>
</li>
</ul>
</div>
<p id="feed-back-page" class="item-nav center">
<span class="iconfont cur">&#xe619;</span>
<span class="iconfont ">&#xe619;</span>
<span class="iconfont ">&#xe619;</span>
</p>
</dd>
<dd class="last">
<div class="foot-panel">
<div class="title">
<div class="title-line"></div>
<div class="text">
<span>更多 YOHO!产品</span>
</div>
</div>
<div id="foot-mobile">
<ul class="mobile clearfix">
<li>
<a href="http://app.yohoshow.com/" target="_blank">
<img class="lazy" data-original="http://img13.static.yhbimg.com/adpic/2014/07/21/15/02d5e1cbc15ab59856f4a758fa860462ed.jpg">
</a>
</li>
<li>
<a href="http://www.yohoboys.com/" target="_blank">
<img class="lazy" data-original="http://img13.static.yhbimg.com/adpic/2014/07/21/15/0210a3490eae2aad6ef8bf3b8133a49ca9.jpg">
</a>
</li>
<li>
<a href="http://www.yohogirls.com/" target="_blank">
<img class="lazy" data-original="http://img11.static.yhbimg.com/adpic/2014/07/21/15/018be2a193424658b5201240ef8c7729e6.jpg">
</a>
</li>
</ul>
</div>
</div>
<p class="item-nav center">
<span class="iconfont cur">&#xe619;</span>
</p>
</dd>
</dl>
</div>
</div>
{{/if}}
<div class="footerbottom">
<div class="promise">
<div class="center-content clearfix">
<div class="left">
<span class="iconfont rgbf">&#xe62f;</span>
<span class="red">100%</span>
<span class="rgbf">品牌授权正品</span>
</div>
<div class="left">
<span class="iconfont rgbf">&#xe630;</span>
<span class="red">7天</span>
<span class="rgbf">无理由退换货</span>
</div>
<div class="left">
<span class="iconfont rgbf">&#xe61c;</span>
<span class="rgbf">客服电话:</span>
<span class="red">400-889-9646</span>
&nbsp;&nbsp;
<span class="rgb9">08:00-22:30(周一至周日)</span>
&nbsp;&nbsp;
<span>
<a class="red" href="http://chat80.live800.com/live800/chatClient/chatbox.jsp?companyID=493979&amp;configID=123576&amp;jid=9277320930" target="_blank">在线客服</a>
</span>
</div>
<div class="right subscribe footer-right">
<input id="subscriber-box" class="rgb6 top" name="subscriberBox"value="订阅我们的邮件">
<a id="subscriber-btn" href="javascript:void(0);" class="iconfont rgbf">&#xe61b;</a>
</div>
</div>
</div>
<div class="footer-help">
<div class="center-content clearfix">
<div class="left">
<ul class="clearfix">
<li class="left">
<p>
<span>新手指南</span>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=81#help_b00reg" target="_blank">注册登录</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=83" target="_blank">选购商品</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=103" target="_blank">订单支付</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=85" target="_blank">收货退款</a>
</p>
</li>
<li class="left">
<p>
<span>会员中心</span>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=87" target="_blank">YOHO币</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=91" target="_blank">会员制度</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=89" target="_blank">账户管理</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=93" target="_blank">密码管理</a>
</p>
</li>
<li class="left">
<p>
<span>购物指南</span>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=95" target="_blank">全球购专区</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=97" target="_blank">尺码选择</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=99" target="_blank">发票</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=101" target="_blank">商品咨询</a>
</p>
</li>
<li class="left">
<p>
<span>支付方式</span>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=105" target="_blank">在线支付</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=107" target="_blank">货到付款</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=109" target="_blank">优惠券</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=111" target="_blank">YOHO币支付</a>
</p>
</li>
<li class="left">
<p>
<span>配送方式</span>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=113" target="_blank">配送时间</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=115" target="_blank">配送范围</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=119" target="_blank">顺丰速运</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=117" target="_blank">商品验收与签收</a>
</p>
</li>
<li class="left">
<p>
<span>售后服务</span>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=121" target="_blank">退换货政策</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=123" target="_blank">退换货流程</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=125" target="_blank">退款方式与时效</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=127" target="_blank">投诉与建议</a>
</p>
</li>
<li class="left">
<p>
<span>APP常见问题</span>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=133" target="_blank">IPhone版</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=135" target="_blank">Android版</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=137" target="_blank">wap版</a>
</p>
<p>
<a href="http://www.yohobuy.com/help/?category_id=139" target="_blank">IPAD版</a>
</p>
</li>
</ul>
</div>
</div>
</div>
<div class="footer-link">
<div class="center-content clearfix">
<div class="left right-flag">
<a href="https://ss.knet.cn/verifyseal.dll?sn=e14021832010046477dka7000000&amp;ct=df&amp;a=1&amp;pa=0.5902942178957805" target="_blank" rel="nofollow">
<img src="http://static.yohobuy.com/images/v3/icon/credit-flag3.png">
</a>
<a href="http://www.isc.org.cn/" target="_blank" rel="nofollow">
<img src="http://static.yohobuy.com/images/v3/icon/isc2.png">
</a>
</div>
<div class="left about-us">
<p>
<a href="http://www.yohobuy.com">返回首页</a>
<span>|</span>
<a href="http://www.yohobuy.com">YOHO!有货</a>
<span>|</span>
<a href="http://www.yohobuy.com/newpower.html">新力传媒</a>
<span>|</span>
<a href="http://www.yohobuy.com/contact.html">联系我们</a>
<span>|</span>
<a href="http://shop.yohobuy.com/settled">商家入驻</a>
<span>|</span>
<a href="http://www.yohobuy.com/privacy.html">隐私条款</a>
<span>|</span>
<a href="http://www.yohobuy.com/link.html">友情链接</a>
</p>
<p>
CopyRight © 2007-2016 南京新与力文化传播有限公司
<a class="rbg6" href="http://www.miibeian.gov.cn/" target="_blank">苏ICP备09011225号</a>
NewPower Co. 版权所有 经营许可证编号:苏B2-20120395
</p>
</div>
</div>
</div>
</div>
<div class="return-top hide">
<span class="iconfont">&#xe610;</span>
</div>
</div>
\ No newline at end of file
... ...