Merge branch 'master' into feature/student
Showing
33 changed files
with
741 additions
and
171 deletions
apps/activity/controllers/app-downloads.js
0 → 100644
1 | 'use strict'; | 1 | 'use strict'; |
2 | const model = require('../models/individuation'); | 2 | const model = require('../models/individuation'); |
3 | +const channels = { | ||
4 | + boys: 1, | ||
5 | + girl: 2, | ||
6 | + kids: 3, | ||
7 | + lifestyle: 4 | ||
8 | +}; | ||
3 | 9 | ||
4 | exports.productLst = function(req, res, next) { | 10 | exports.productLst = function(req, res, next) { |
5 | let keys = ['sort', 'misort', 'msort', 'gender', 'brand'], | 11 | let keys = ['sort', 'misort', 'msort', 'gender', 'brand'], |
6 | - enumParam = {}, | ||
7 | params = { | 12 | params = { |
8 | uid: req.query.uid, | 13 | uid: req.query.uid, |
9 | udid: req.query.udid, | 14 | udid: req.query.udid, |
10 | promotion: req.query.pid, | 15 | promotion: req.query.pid, |
16 | + yh_channel: req.query.yh_channel || (req.cookies._Channel && channels[req.cookies._Channel]) || 1, | ||
11 | specified_sort: req.query.enum, | 17 | specified_sort: req.query.enum, |
18 | + stocknumber: req.query.sn, | ||
12 | p_d: req.query.pd, | 19 | p_d: req.query.pd, |
13 | limit: req.query.limit || 10 | 20 | limit: req.query.limit || 10 |
14 | }; | 21 | }; |
@@ -21,21 +28,17 @@ exports.productLst = function(req, res, next) { | @@ -21,21 +28,17 @@ exports.productLst = function(req, res, next) { | ||
21 | 28 | ||
22 | if (params.specified_sort) { | 29 | if (params.specified_sort) { |
23 | if (params.brand) { | 30 | if (params.brand) { |
24 | - enumParam.brands = params.brand.split(','); | ||
25 | - params.limit = enumParam.brands.length; | 31 | + params.limit = params.brand.split(',').length; |
26 | } else if (params.sort) { | 32 | } else if (params.sort) { |
27 | - enumParam.sorts = params.sort.split(','); | ||
28 | - params.limit = enumParam.sorts.length; | 33 | + params.limit = params.sort.split(',').length; |
29 | } else if (params.misort) { | 34 | } else if (params.misort) { |
30 | - enumParam.misorts = params.misort.split(','); | ||
31 | - params.limit = enumParam.misorts.length; | 35 | + params.limit = params.misort.split(',').length; |
32 | } else if (params.msort) { | 36 | } else if (params.msort) { |
33 | - enumParam.msorts = params.msort.split(','); | ||
34 | - params.limit = enumParam.msorts.length; | 37 | + params.limit = params.msort.split(',').length; |
35 | } | 38 | } |
36 | } | 39 | } |
37 | 40 | ||
38 | - model.productLst(params, enumParam).then((result) => { | 41 | + model.productLst(params).then((result) => { |
39 | res.jsonp(result); | 42 | res.jsonp(result); |
40 | }).catch(next); | 43 | }).catch(next); |
41 | }; | 44 | }; |
@@ -41,6 +41,7 @@ exports.wechatShare = (req, res, next) => { | @@ -41,6 +41,7 @@ exports.wechatShare = (req, res, next) => { | ||
41 | exports.feature = (req, res) => { | 41 | exports.feature = (req, res) => { |
42 | let mktCode = req.query.mkt_code || req.query.union_type || false; | 42 | let mktCode = req.query.mkt_code || req.query.union_type || false; |
43 | let expires = req.query.expires; | 43 | let expires = req.query.expires; |
44 | + let cover = req.query.cover; | ||
44 | 45 | ||
45 | if (mktCode) { | 46 | if (mktCode) { |
46 | res.cookie('unionTypeYas', mktCode, { // 下载浮层 | 47 | res.cookie('unionTypeYas', mktCode, { // 下载浮层 |
@@ -55,7 +56,7 @@ exports.feature = (req, res) => { | @@ -55,7 +56,7 @@ exports.feature = (req, res) => { | ||
55 | 56 | ||
56 | expires && (options.expires = new Date(Date.now() + Number(expires))); | 57 | expires && (options.expires = new Date(Date.now() + Number(expires))); |
57 | 58 | ||
58 | - if (req.yoho.isWechat) { | 59 | + if (req.yoho.isWechat || cover) { |
59 | // 微信中,不管是否已经种入cookie,直接覆盖 | 60 | // 微信中,不管是否已经种入cookie,直接覆盖 |
60 | res.cookie('mkt_code', mktCode, options); | 61 | res.cookie('mkt_code', mktCode, options); |
61 | } else if (!req.cookies.mkt_code) { | 62 | } else if (!req.cookies.mkt_code) { |
@@ -3,14 +3,13 @@ | @@ -3,14 +3,13 @@ | ||
3 | const api = global.yoho.API; | 3 | const api = global.yoho.API; |
4 | 4 | ||
5 | let _getProduct = function(o) { | 5 | let _getProduct = function(o) { |
6 | - if (!o) { | ||
7 | - return {}; | ||
8 | - } | ||
9 | return { | 6 | return { |
10 | small_sort_id: o.small_sort_id, | 7 | small_sort_id: o.small_sort_id, |
11 | middle_sort_id: o.middle_sort_id, | 8 | middle_sort_id: o.middle_sort_id, |
12 | max_sort_id: o.max_sort_id, | 9 | max_sort_id: o.max_sort_id, |
13 | brand_id: o.brand_id, | 10 | brand_id: o.brand_id, |
11 | + shop_id: o.shop_id, | ||
12 | + shop_template_type: o.shop_template_type, | ||
14 | brand_domain: o.brand_domain, | 13 | brand_domain: o.brand_domain, |
15 | brand_name: o.brand_name, | 14 | brand_name: o.brand_name, |
16 | product_id: o.product_id, | 15 | product_id: o.product_id, |
@@ -20,39 +19,21 @@ let _getProduct = function(o) { | @@ -20,39 +19,21 @@ let _getProduct = function(o) { | ||
20 | sales_price: o.sales_price, | 19 | sales_price: o.sales_price, |
21 | cn_alphabet: o.cn_alphabet, | 20 | cn_alphabet: o.cn_alphabet, |
22 | default_images: o.default_images, | 21 | default_images: o.default_images, |
23 | - goods_id: Array.isArray(o.goods_list) && o.goods_list.length ? o.goods_list[0].goods_id : '' | 22 | + goods_id: Array.isArray(o.goods_list) && o.goods_list.length ? o.goods_list[0].goods_id : undefined |
24 | }; | 23 | }; |
25 | }; | 24 | }; |
26 | 25 | ||
27 | module.exports = { | 26 | module.exports = { |
28 | - productLst: function(params, enumParam) { | 27 | + productLst: function(params) { |
29 | return api.get('', Object.assign({ | 28 | return api.get('', Object.assign({ |
30 | method: 'app.search.newPromotion' | 29 | method: 'app.search.newPromotion' |
31 | }, params)).then(res => { | 30 | }, params)).then(res => { |
32 | - var data = new Array(Number(params.limit)), | 31 | + var data = [], |
33 | lst = (res.data && res.data.product_list) || []; | 32 | lst = (res.data && res.data.product_list) || []; |
34 | 33 | ||
35 | - for (var i = 0; i < data.length; i++) { | ||
36 | - var o = lst[i] || {}; | ||
37 | - | ||
38 | - if (params.specified_sort) { | ||
39 | - // 枚举类型 | ||
40 | - if (enumParam.brands && Number(enumParam.brands[i]) === Number(o.brand_id)) { | ||
41 | - data[i] = _getProduct(o); | ||
42 | - } else if (enumParam.sorts && Number(enumParam.sorts[i]) === Number(o.small_sort_id)) { | ||
43 | - data[i] = _getProduct(o); | ||
44 | - } else if (enumParam.misorts && Number(enumParam.misorts[i]) === Number(o.middle_sort_id)) { | ||
45 | - data[i] = _getProduct(o); | ||
46 | - } else if (enumParam.msorts && Number(enumParam.msorts[i]) === Number(o.max_sort_id)) { | ||
47 | - data[i] = _getProduct(o); | ||
48 | - } else { | ||
49 | - lst.splice(i, 0, {}); | ||
50 | - data[i] = {}; | ||
51 | - } | ||
52 | - } else { | ||
53 | - data[i] = _getProduct(o); | ||
54 | - } | ||
55 | - } | 34 | + lst.forEach(function(o) { |
35 | + o && data.push(_getProduct(o)); | ||
36 | + }); | ||
56 | return data; | 37 | return data; |
57 | }); | 38 | }); |
58 | } | 39 | } |
@@ -29,7 +29,7 @@ const share = require(`${cRoot}/share`); | @@ -29,7 +29,7 @@ const share = require(`${cRoot}/share`); | ||
29 | const aliCloud = require(`${cRoot}/ali-cloud`); | 29 | const aliCloud = require(`${cRoot}/ali-cloud`); |
30 | const studentMarket = require(`${cRoot}/student-market`); | 30 | const studentMarket = require(`${cRoot}/student-market`); |
31 | const individuation = require(`${cRoot}/individuation`); | 31 | const individuation = require(`${cRoot}/individuation`); |
32 | - | 32 | +const appDownloads = require(`${cRoot}/app-downloads`); |
33 | const redbag = require(`${cRoot}/redbag`); | 33 | const redbag = require(`${cRoot}/redbag`); |
34 | 34 | ||
35 | // routers | 35 | // routers |
@@ -139,4 +139,6 @@ router.get('/redbag/2017', redbag.index); | @@ -139,4 +139,6 @@ router.get('/redbag/2017', redbag.index); | ||
139 | // 获取活动页面个性化推荐商品数据 | 139 | // 获取活动页面个性化推荐商品数据 |
140 | router.get('/individuation', individuation.productLst); | 140 | router.get('/individuation', individuation.productLst); |
141 | 141 | ||
142 | +router.get('/app-downloads', appDownloads.index); | ||
143 | + | ||
142 | module.exports = router; | 144 | module.exports = router; |
apps/activity/views/action/app-downloads.hbs
0 → 100644
1 | +<div class="container"> | ||
2 | + <div id="no-download"></div> | ||
3 | + <div class="banner"></div> | ||
4 | + <div class="main"> | ||
5 | + <div class="slide-box"> | ||
6 | + <div class="swiper-wrapper clearfix"> | ||
7 | + <div class="yohobuy" tag="0"> | ||
8 | + <div class="swiper-yohobuy bg"></div> | ||
9 | + <div class="ewm-area"> | ||
10 | + <img src="//cdn.yoho.cn/yohocn/160315/images/ewm-yohobuy.png" /> | ||
11 | + <div class="ewm-info"></div> | ||
12 | + </div> | ||
13 | + <span id="download" class="download-btn">点击下载 · Yoho!Buy有货</span> | ||
14 | + </div> | ||
15 | + </div> | ||
16 | + </div> | ||
17 | + <div class="slide-pagination clearfix"> | ||
18 | + </div> | ||
19 | + </div> | ||
20 | + <div class="footer"> | ||
21 | + CopyRight © 2007-2017 YOHO!新力传媒 | ||
22 | + </div> | ||
23 | + <div class="mask"> | ||
24 | + <div class="wx-img1"></div> | ||
25 | + <div class="wx-img2"></div> | ||
26 | + <div class="wx-img3"></div> | ||
27 | + </div> | ||
28 | +</div> |
@@ -8,7 +8,8 @@ | @@ -8,7 +8,8 @@ | ||
8 | <div class="mobile-container"> | 8 | <div class="mobile-container"> |
9 | <div class="mobile-wrap yoho-page student"> | 9 | <div class="mobile-wrap yoho-page student"> |
10 | <div style=" position: fixed;background: #f0f0f0;height: 100%;width: 100%;"> | 10 | <div style=" position: fixed;background: #f0f0f0;height: 100%;width: 100%;"> |
11 | - <section class="s-feild s-marbot"> | 11 | + <div style="text-align:center;font-size:16px;padding-top:100px;">学生认证功能暂时关闭</div> |
12 | + {{!--<section class="s-feild s-marbot"> | ||
12 | 全国已有<span class="s-red">{{count}}</span>位学生完成认证 | 13 | 全国已有<span class="s-red">{{count}}</span>位学生完成认证 |
13 | </section> | 14 | </section> |
14 | <div class="s-form"> | 15 | <div class="s-form"> |
@@ -40,12 +41,12 @@ | @@ -40,12 +41,12 @@ | ||
40 | 同意<a class="s-blue" href='//m.yohobuy.com/activity/student/detail/renzhen?openby:yohobuy={"action":"go.h5","params":{"islogin":"N","url":"{{http}}//m.yohobuy.com/activity/student/detail/renzhen"}}'>Yoho!Buy有货学生认证协议</a> | 41 | 同意<a class="s-blue" href='//m.yohobuy.com/activity/student/detail/renzhen?openby:yohobuy={"action":"go.h5","params":{"islogin":"N","url":"{{http}}//m.yohobuy.com/activity/student/detail/renzhen"}}'>Yoho!Buy有货学生认证协议</a> |
41 | </section> | 42 | </section> |
42 | <a class="s-submit" href="javascript:void(0);">立即认证</a> | 43 | <a class="s-submit" href="javascript:void(0);">立即认证</a> |
43 | - </div> | 44 | + </div>--}} |
44 | </div> | 45 | </div> |
45 | 46 | ||
46 | </div> | 47 | </div> |
47 | </div> | 48 | </div> |
48 | - | 49 | +{{!-- |
49 | <article class="aslider" data-aslider="province"> | 50 | <article class="aslider" data-aslider="province"> |
50 | <section class="asilder_wrapper close"> | 51 | <section class="asilder_wrapper close"> |
51 | <header class="s-layout-title"> | 52 | <header class="s-layout-title"> |
@@ -133,4 +134,4 @@ | @@ -133,4 +134,4 @@ | ||
133 | </div> | 134 | </div> |
134 | </div> | 135 | </div> |
135 | </section> | 136 | </section> |
136 | -</article> | 137 | +</article>--}} |
@@ -143,7 +143,7 @@ | @@ -143,7 +143,7 @@ | ||
143 | </section> | 143 | </section> |
144 | 144 | ||
145 | {{#loginUrl}} | 145 | {{#loginUrl}} |
146 | - <div class='s-layout'> | 146 | + {{!--<div class='s-layout'> |
147 | {{#if @root.isSupportStudent}} | 147 | {{#if @root.isSupportStudent}} |
148 | 快来认证吧,认证通过即可享受专属优惠! | 148 | 快来认证吧,认证通过即可享受专属优惠! |
149 | {{else}} | 149 | {{else}} |
@@ -153,7 +153,7 @@ | @@ -153,7 +153,7 @@ | ||
153 | {{#if @root.isSupportStudent}} | 153 | {{#if @root.isSupportStudent}} |
154 | <a class='s-renzhen' href='{{.}}'>立即认证</a> | 154 | <a class='s-renzhen' href='{{.}}'>立即认证</a> |
155 | {{/if}} | 155 | {{/if}} |
156 | - </div> | 156 | + </div>--}} |
157 | <div class="s-replace"></div> | 157 | <div class="s-replace"></div> |
158 | {{/loginUrl}} | 158 | {{/loginUrl}} |
159 | 159 |
@@ -2,17 +2,35 @@ | @@ -2,17 +2,35 @@ | ||
2 | * 自定义频道, 临时方案,暂时写死 | 2 | * 自定义频道, 临时方案,暂时写死 |
3 | */ | 3 | */ |
4 | 'use strict'; | 4 | 'use strict'; |
5 | +const customModel = require('../models/custom'); | ||
5 | 6 | ||
6 | -let index = (req, res) => { | ||
7 | - res.render('custom', { | 7 | +let index = (req, res, next) => { |
8 | + let contentCode = req.params.id; | ||
9 | + | ||
10 | + if (!contentCode) { | ||
11 | + return next(); | ||
12 | + } | ||
13 | + | ||
14 | + customModel.getResourceData(contentCode).then(result => { | ||
15 | + res.render('custom', { | ||
16 | + module: 'channel', | ||
17 | + page: 'custom', | ||
18 | + content: result, | ||
19 | + title: req.query.title || 'Yoho!Buy 有货' | ||
20 | + }); | ||
21 | + }).catch(next); | ||
22 | +}; | ||
23 | + | ||
24 | +let zhihui = (req, res) => { | ||
25 | + res.render('zhihui', { | ||
8 | module: 'channel', | 26 | module: 'channel', |
9 | page: 'custom', | 27 | page: 'custom', |
10 | - content_code: req.params.id, // 这是位置码,后边去调用资源位,渲染页面 | ||
11 | title: req.query.title || 'Yoho!Buy 有货', | 28 | title: req.query.title || 'Yoho!Buy 有货', |
12 | downloadLink: 'http://union.yoho.cn/union/downapp.html?union_type=100000000000081' | 29 | downloadLink: 'http://union.yoho.cn/union/downapp.html?union_type=100000000000081' |
13 | }); | 30 | }); |
14 | }; | 31 | }; |
15 | 32 | ||
16 | module.exports = { | 33 | module.exports = { |
17 | - index | 34 | + index, |
35 | + zhihui | ||
18 | }; | 36 | }; |
apps/channel/models/custom.js
0 → 100644
1 | +/** | ||
2 | + * 自定义频道页面 model | ||
3 | + * @author: Bi Kai<kai.bi@yoho.cn> | ||
4 | + * @date: 2016/05/09 | ||
5 | + */ | ||
6 | + | ||
7 | +'use strict'; | ||
8 | +const utils = '../../../utils'; | ||
9 | +const resourcesProcess = require(`${utils}/resources-process`); | ||
10 | +const service = global.yoho.ServiceAPI; | ||
11 | + | ||
12 | +const getResourceData = (code) => { | ||
13 | + return service.get('operations/api/v5/resource/get', { | ||
14 | + content_code: code | ||
15 | + }, { | ||
16 | + cache: true, | ||
17 | + code: 200 | ||
18 | + }).then(result => { | ||
19 | + return resourcesProcess(result.data); | ||
20 | + }); | ||
21 | +}; | ||
22 | + | ||
23 | +module.exports = { | ||
24 | + getResourceData | ||
25 | +}; |
@@ -36,6 +36,10 @@ router.get('/brands/delBrandHistory', brandController.delBrandHistory); // 删 | @@ -36,6 +36,10 @@ router.get('/brands/delBrandHistory', brandController.delBrandHistory); // 删 | ||
36 | router.post('/channel/shopRecom', channel.shopRecom); // 店铺推荐收藏状态 | 36 | router.post('/channel/shopRecom', channel.shopRecom); // 店铺推荐收藏状态 |
37 | router.post('/channel/userVip', channel.userVip); | 37 | router.post('/channel/userVip', channel.userVip); |
38 | 38 | ||
39 | +// 自定义频道,市场推广-智汇 | ||
40 | +// 此页面做的早,写死发给市场,与自定义的不兼容,所以需要写死 | ||
41 | +router.get('/channel/2fb054e8315300a1ae1f80c3a4fda862.html', custom.zhihui); | ||
42 | + | ||
39 | // 自定义频道 | 43 | // 自定义频道 |
40 | router.get('/channel/:id.html', custom.index); | 44 | router.get('/channel/:id.html', custom.index); |
41 | 45 |
1 | -{{!-- 临时方案 --}} | ||
2 | - | ||
3 | -<style> | ||
4 | - html,body { | ||
5 | - width: 100%; | ||
6 | - height: 100%; | ||
7 | - margin: 0; | ||
8 | - padding: 0; | ||
9 | - } | ||
10 | - div { | ||
11 | - margin: 0; | ||
12 | - padding: 0; | ||
13 | - } | ||
14 | - .wrapper { | ||
15 | - position: relative; | ||
16 | - width: 100%; | ||
17 | - | ||
18 | - } | ||
19 | - | ||
20 | - .container { | ||
21 | - position: relative; | ||
22 | - margin: 0 auto; | ||
23 | - } | ||
24 | - | ||
25 | - img { | ||
26 | - width:100%; | ||
27 | - float: left; | ||
28 | - } | ||
29 | - | ||
30 | - ul { | ||
31 | - list-style: none; | ||
32 | - overflow: hidden; | ||
33 | - margin: 0; | ||
34 | - padding: 0; | ||
35 | - } | ||
36 | - | ||
37 | - ul li { | ||
38 | - position: relative; | ||
39 | - width:100%; | ||
40 | - overflow: hidden; | ||
41 | - } | ||
42 | - | ||
43 | - #btn_download { | ||
44 | - position: absolute; | ||
45 | - width: 73%; | ||
46 | - height: 14%; | ||
47 | - top: 75.5%; | ||
48 | - left: 13%; | ||
49 | - } | ||
50 | -</style> | ||
51 | -<div class="wrapper"> | ||
52 | - <div class="container"> | ||
53 | - <ul> | ||
54 | - <li> | ||
55 | - <img src="https://feature.yoho.cn/0113/images/01ff33cffc05e280bd701b90801835ad51.jpg?imageView2/2/q/75/"> | ||
56 | - <a id="btn_download" href="{{downloadLink}}" target="_blank"></a> | ||
57 | - </li> | ||
58 | - <li> | ||
59 | - <img src="https://feature.yoho.cn/0113/images/015d6241108a4db156d4153a5645bd283e.jpg?imageView2/2/q/75/"> | ||
60 | - </li> | ||
61 | - <li> | ||
62 | - <img src="https://feature.yoho.cn/0113/images/01651b926f5f22f4b00b6809925e4388a3.jpg?imageView2/2/q/75/"> | ||
63 | - </li> | ||
64 | - <li> | ||
65 | - <img src="https://feature.yoho.cn/0113/images/0157ad8f797d97f10cc21bd30333c5a7c5.jpg?imageView2/2/q/75/"> | ||
66 | - </li> | ||
67 | - </ul> | ||
68 | - </div> | 1 | +{{! 资源位}} |
2 | +<div class="resource-content"> | ||
3 | + {{> channel/content}} | ||
69 | </div> | 4 | </div> |
apps/channel/views/action/zhihui.hbs
0 → 100644
1 | +<style> | ||
2 | + html,body { | ||
3 | + width: 100%; | ||
4 | + height: 100%; | ||
5 | + margin: 0; | ||
6 | + padding: 0; | ||
7 | + } | ||
8 | + div { | ||
9 | + margin: 0; | ||
10 | + padding: 0; | ||
11 | + } | ||
12 | + .wrapper { | ||
13 | + position: relative; | ||
14 | + width: 100%; | ||
15 | + | ||
16 | + } | ||
17 | + | ||
18 | + .container { | ||
19 | + position: relative; | ||
20 | + margin: 0 auto; | ||
21 | + } | ||
22 | + | ||
23 | + img { | ||
24 | + width:100%; | ||
25 | + float: left; | ||
26 | + } | ||
27 | + | ||
28 | + ul { | ||
29 | + list-style: none; | ||
30 | + overflow: hidden; | ||
31 | + margin: 0; | ||
32 | + padding: 0; | ||
33 | + } | ||
34 | + | ||
35 | + ul li { | ||
36 | + position: relative; | ||
37 | + width:100%; | ||
38 | + overflow: hidden; | ||
39 | + } | ||
40 | + | ||
41 | + #btn_download { | ||
42 | + position: absolute; | ||
43 | + width: 73%; | ||
44 | + height: 14%; | ||
45 | + top: 75.5%; | ||
46 | + left: 13%; | ||
47 | + } | ||
48 | +</style> | ||
49 | +<div class="wrapper"> | ||
50 | + <div class="container"> | ||
51 | + <ul> | ||
52 | + <li> | ||
53 | + <img src="https://feature.yoho.cn/0113/images/01ff33cffc05e280bd701b90801835ad51.jpg?imageView2/2/q/75/"> | ||
54 | + <a id="btn_download" href="{{downloadLink}}" target="_blank"></a> | ||
55 | + </li> | ||
56 | + <li> | ||
57 | + <img src="https://feature.yoho.cn/0113/images/015d6241108a4db156d4153a5645bd283e.jpg?imageView2/2/q/75/"> | ||
58 | + </li> | ||
59 | + <li> | ||
60 | + <img src="https://feature.yoho.cn/0113/images/01651b926f5f22f4b00b6809925e4388a3.jpg?imageView2/2/q/75/"> | ||
61 | + </li> | ||
62 | + <li> | ||
63 | + <img src="https://feature.yoho.cn/0113/images/0157ad8f797d97f10cc21bd30333c5a7c5.jpg?imageView2/2/q/75/"> | ||
64 | + </li> | ||
65 | + </ul> | ||
66 | + <input type="hidden" id="no-download" name=""> | ||
67 | + </div> | ||
68 | +</div> |
@@ -14,14 +14,14 @@ | @@ -14,14 +14,14 @@ | ||
14 | <div class="iconfont more-icon tap-hightlight"></div> | 14 | <div class="iconfont more-icon tap-hightlight"></div> |
15 | </a> | 15 | </a> |
16 | {{#unless students}} | 16 | {{#unless students}} |
17 | - <a class="students-entry" href="{{verifyUrl}}">学生认证</a> | 17 | + {{!--<a class="students-entry" href="{{verifyUrl}}">学生认证</a>--}} |
18 | {{/unless}} | 18 | {{/unless}} |
19 | {{^}} | 19 | {{^}} |
20 | <div class="user-info"> | 20 | <div class="user-info"> |
21 | <a class="login-btn" href="{{signinUrl}}"> | 21 | <a class="login-btn" href="{{signinUrl}}"> |
22 | 登录/注册 | 22 | 登录/注册 |
23 | </a> | 23 | </a> |
24 | - <a class="students-entry" href="{{verifyUrl}}">学生认证</a> | 24 | + {{!--<a class="students-entry" href="{{verifyUrl}}">学生认证</a>--}} |
25 | </div> | 25 | </div> |
26 | {{/isLogin}} | 26 | {{/isLogin}} |
27 | </div> | 27 | </div> |
@@ -12,6 +12,9 @@ const cachePage = { | @@ -12,6 +12,9 @@ const cachePage = { | ||
12 | '/kids': 30 * SECOND, | 12 | '/kids': 30 * SECOND, |
13 | '/lifestyle': 30 * SECOND, | 13 | '/lifestyle': 30 * SECOND, |
14 | 14 | ||
15 | + // 自定义频道 | ||
16 | + '/channel/:id.html': 1 * MINUTE, | ||
17 | + | ||
15 | //ajax获取频道页楼层 | 18 | //ajax获取频道页楼层 |
16 | '/channel/getResourceContent': 30 * MINUTE, | 19 | '/channel/getResourceContent': 30 * MINUTE, |
17 | 20 |
@@ -17,21 +17,21 @@ module.exports = { | @@ -17,21 +17,21 @@ module.exports = { | ||
17 | assetUrl: '//127.0.0.1:5001', | 17 | assetUrl: '//127.0.0.1:5001', |
18 | testCode: 'yoho4946abcdef#$%&!@', | 18 | testCode: 'yoho4946abcdef#$%&!@', |
19 | domains: { | 19 | domains: { |
20 | - api: 'http://api-test3.yohops.com:9999/', | ||
21 | - service: 'http://service-test3.yohops.com:9999/', | ||
22 | - liveApi: 'http://testapi.live.yohops.com:9999/', | ||
23 | - singleApi: 'http://api-test3.yohops.com:9999/', | ||
24 | - imSocket: 'ws://im.yohobuy.com:10240', | ||
25 | - imCs: 'http://im.yohobuy.com/api', | ||
26 | - imServer: 'http://im.yohobuy.com/server' | 20 | + // api: 'http://api-test3.yohops.com:9999/', |
21 | + // service: 'http://service-test3.yohops.com:9999/', | ||
22 | + // liveApi: 'http://testapi.live.yohops.com:9999/', | ||
23 | + // singleApi: 'http://api-test3.yohops.com:9999/', | ||
24 | + // imSocket: 'ws://im.yohobuy.com:10240', | ||
25 | + // imCs: 'http://im.yohobuy.com/api', | ||
26 | + // imServer: 'http://im.yohobuy.com/server' | ||
27 | 27 | ||
28 | - // api: 'http://api.yoho.cn/', | ||
29 | - // service: 'http://service.yoho.cn/', | ||
30 | - // liveApi: 'http://api.live.yoho.cn/', | ||
31 | - // singleApi: 'http://single.yoho.cn/', | ||
32 | - // imSocket: 'wss://imsocket.yohobuy.com:443', | ||
33 | - // imCs: 'https://imhttp.yohobuy.com/api', | ||
34 | - // imServer: 'https://imhttp.yohobuy.com/server' | 28 | + api: 'http://api.yoho.cn/', |
29 | + service: 'http://service.yoho.cn/', | ||
30 | + liveApi: 'http://api.live.yoho.cn/', | ||
31 | + singleApi: 'http://single.yoho.cn/', | ||
32 | + imSocket: 'wss://imsocket.yohobuy.com:443', | ||
33 | + imCs: 'https://imhttp.yohobuy.com/api', | ||
34 | + imServer: 'https://imhttp.yohobuy.com/server' | ||
35 | }, | 35 | }, |
36 | subDomains: { | 36 | subDomains: { |
37 | host: '.m.yohobuy.com', | 37 | host: '.m.yohobuy.com', |
@@ -12,7 +12,7 @@ | @@ -12,7 +12,7 @@ | ||
12 | a.async = 1; | 12 | a.async = 1; |
13 | a.src = j; | 13 | a.src = j; |
14 | m.parentNode.insertBefore(a, m); | 14 | m.parentNode.insertBefore(a, m); |
15 | - }(window, document, 'script', (document.location.protocol === 'https:' ? 'https:' : 'http:') + '//cdn.yoho.cn/yas-jssdk/2.1.2/yas.js', '_yas')); | 15 | + }(window, document, 'script', (document.location.protocol === 'https:' ? 'https:' : 'http:') + '//cdn.yoho.cn/yas-jssdk/2.2.2/yas.js', '_yas')); |
16 | 16 | ||
17 | var _hmt = _hmt || []; | 17 | var _hmt = _hmt || []; |
18 | 18 | ||
@@ -56,7 +56,7 @@ | @@ -56,7 +56,7 @@ | ||
56 | uid = uid === 0 ? '' : uid; | 56 | uid = uid === 0 ? '' : uid; |
57 | window._ozuid = uid; // 暴露ozuid | 57 | window._ozuid = uid; // 暴露ozuid |
58 | if (window._yas) { | 58 | if (window._yas) { |
59 | - window._yas(1 * new Date(), '2.1.2', 'yohobuy_m', uid, '', ''); | 59 | + window._yas(1 * new Date(), '2.2.2', 'yohobuy_m', uid, '', ''); |
60 | } | 60 | } |
61 | 61 | ||
62 | // 非登录状态,加载百度统计 | 62 | // 非登录状态,加载百度统计 |
@@ -2,7 +2,7 @@ | @@ -2,7 +2,7 @@ | ||
2 | {{#data}} | 2 | {{#data}} |
3 | <div class="banner-list"> | 3 | <div class="banner-list"> |
4 | <a href="{{url}}"> | 4 | <a href="{{url}}"> |
5 | - <img src="{{image2 src w=640 h=200 q=60}}" alt=""> | 5 | + <img src="{{image2 src w=640 h=200 q=60 mode=3}}" alt=""> |
6 | </a> | 6 | </a> |
7 | </div> | 7 | </div> |
8 | {{/data}} | 8 | {{/data}} |
@@ -12,7 +12,7 @@ | @@ -12,7 +12,7 @@ | ||
12 | {{#data}} | 12 | {{#data}} |
13 | <li class="swiper-slide"> | 13 | <li class="swiper-slide"> |
14 | <a href="{{url}}"> | 14 | <a href="{{url}}"> |
15 | - <img src="{{image2 src w=640 h=200 q=60}}" alt=""> | 15 | + <img src="{{image2 src w=640 h=200 q=60 mode=3}}" alt=""> |
16 | </a> | 16 | </a> |
17 | </li> | 17 | </li> |
18 | {{/data}} | 18 | {{/data}} |
@@ -8,7 +8,7 @@ | @@ -8,7 +8,7 @@ | ||
8 | {{!--此处不使用 Lazyload 是由于安卓 UC 10 版本加载不出来--}} | 8 | {{!--此处不使用 Lazyload 是由于安卓 UC 10 版本加载不出来--}} |
9 | <img src="{{image2 src w=158 h=174 q=60}}"> | 9 | <img src="{{image2 src w=158 h=174 q=60}}"> |
10 | </div> | 10 | </div> |
11 | - <p class="brand-name">{{name}}</p> | 11 | + {{!--<p class="brand-name">{{name}}</p>--}} |
12 | </a> | 12 | </a> |
13 | </li> | 13 | </li> |
14 | {{/ list}} | 14 | {{/ list}} |
@@ -8,7 +8,7 @@ | @@ -8,7 +8,7 @@ | ||
8 | {{!--此处不使用 Lazyload 是由于安卓 UC 10 版本加载不出来--}} | 8 | {{!--此处不使用 Lazyload 是由于安卓 UC 10 版本加载不出来--}} |
9 | <img src="{{image2 src w=158 h=174 q=60}}"> | 9 | <img src="{{image2 src w=158 h=174 q=60}}"> |
10 | </div> | 10 | </div> |
11 | - <p class="brand-name">{{name}}</p> | 11 | + {{!--<p class="brand-name">{{name}}</p>--}} |
12 | </a> | 12 | </a> |
13 | </li> | 13 | </li> |
14 | {{/ list}} | 14 | {{/ list}} |
public/js/activity/app-downloads.page.js
0 → 100644
1 | +/* eslint no-undef: "_yas" */ | ||
2 | + | ||
3 | +require('../../scss/activity/_app-downloads.css'); | ||
4 | +require('../../js/common'); | ||
5 | + | ||
6 | +var url = 'yohobuy://yohobuy.com/goapp?openby:yohobuy={"action":"go.home","params":{"gender":"1","channel":"2"}}'; | ||
7 | +var u = navigator.userAgent.toLowerCase(); | ||
8 | +var isiOS = u.indexOf('os') > -1 || u.indexOf('iphone') > -1 || u.indexOf('mac') > -1 || u.indexOf('ipad') > -1; | ||
9 | + | ||
10 | +var appPath = url; | ||
11 | +var ifr; | ||
12 | + | ||
13 | +setTimeout(function() { | ||
14 | + //记录唤醒时间 | ||
15 | + var openTime = +new Date(); | ||
16 | + | ||
17 | + window.setTimeout(function() { | ||
18 | + if (ifr) { | ||
19 | + document.body.removeChild(ifr); | ||
20 | + } | ||
21 | + | ||
22 | + //如果setTimeout 回调超过2500ms,则弹出下载 | ||
23 | + if ((+new Date()) - openTime > 500) { | ||
24 | + if (isiOS) { | ||
25 | + url = 'http://itunes.apple.com/us/app/id490655927?ls=1&mt=8'; | ||
26 | + } else { | ||
27 | + url = 'http://yoho-apps.qiniudn.com/YohoBuy_YOHO.apk'; | ||
28 | + } | ||
29 | + | ||
30 | + location.href = url; | ||
31 | + // window.open(url); | ||
32 | + } | ||
33 | + }, 1000); | ||
34 | + | ||
35 | + if (isiOS) { | ||
36 | + window.location.href = appPath; | ||
37 | + } else { | ||
38 | + ifr = document.createElement('iframe'); | ||
39 | + ifr.src = appPath; | ||
40 | + ifr.style.display = 'none'; | ||
41 | + document.body.appendChild(ifr); | ||
42 | + } | ||
43 | +}, 500); | ||
44 | + | ||
45 | +//1: 男生,2-女生,3-潮童,4-创意生活 | ||
46 | +var CHANNELS = { | ||
47 | + boys: 1, | ||
48 | + girls: 2, | ||
49 | + kids: 3, | ||
50 | + lifestyle: 4 | ||
51 | +}; | ||
52 | + | ||
53 | +$('#download').click(function() { | ||
54 | + var url; | ||
55 | + var channel = window.cookie('_Channel'); | ||
56 | + | ||
57 | + if (isiOS) { | ||
58 | + url = 'http://itunes.apple.com/us/app/id490655927?ls=1&mt=8'; | ||
59 | + } else { | ||
60 | + url = 'http://yoho-apps.qiniudn.com/YohoBuy_YOHO.apk'; | ||
61 | + } | ||
62 | + | ||
63 | + // 上报 nginx 数据 | ||
64 | + $.get('//m.yohobuy.com/activitylog.json?download2', function() { | ||
65 | + }); | ||
66 | + | ||
67 | + // 上报 yas 数据 | ||
68 | + if (typeof _yas !== 'undefined') { | ||
69 | + _yas.sendCustomInfo && _yas.sendCustomInfo({ | ||
70 | + op: 'YB_DOWNLOAD_C', | ||
71 | + param: JSON.stringify({ | ||
72 | + C_ID: CHANNELS[channel], | ||
73 | + TO_URL: encodeURIComponent(url) | ||
74 | + }) | ||
75 | + }, true); | ||
76 | + } | ||
77 | + | ||
78 | + location.href = url; | ||
79 | +}); | ||
80 | + |
1 | +var Swiper = require('yoho-swiper2'); | ||
2 | +var lazyLoad = require('yoho-jquery-lazyload'); | ||
3 | +var fastclick = require('yoho-fastclick'); | ||
4 | +var swiperClass; | ||
5 | + | ||
1 | require('../common'); | 6 | require('../common'); |
7 | + | ||
8 | +$(function () { | ||
9 | + fastclick.attach(document.body); | ||
10 | + lazyLoad($('img.lazy')); | ||
11 | + | ||
12 | + // 头部banner轮播 | ||
13 | + if ($('.banner-swiper').find('li').size() > 1) { | ||
14 | + new Swiper('.banner-swiper', { | ||
15 | + lazyLoading: true, | ||
16 | + lazyLoadingInPrevNext: true, | ||
17 | + loop: true, | ||
18 | + autoplay: 3000, | ||
19 | + autoplayDisableOnInteraction: false, | ||
20 | + paginationClickable: true, | ||
21 | + slideElement: 'li', | ||
22 | + pagination: '.banner-top .pagination-inner' | ||
23 | + }); | ||
24 | + } | ||
25 | + | ||
26 | + // 小 banner | ||
27 | + $('.banner-center-swiper').each(function () { | ||
28 | + if ($(this).find('li').length > 1) { | ||
29 | + new Swiper(this, { | ||
30 | + preloadImages: false, | ||
31 | + lazyLoading: true, | ||
32 | + lazyLoadingInPrevNext: true, | ||
33 | + lazyLoadingOnTransitionStart: true, | ||
34 | + loop: true, | ||
35 | + autoplay: 3000, | ||
36 | + autoplayDisableOnInteraction: false, | ||
37 | + slideElement: 'li', | ||
38 | + paginationHide: true | ||
39 | + }); | ||
40 | + } | ||
41 | + }); | ||
42 | + | ||
43 | + // 热门品牌滑动 | ||
44 | + if ($('.brands-swiper').find('li').length > 1) { | ||
45 | + new Swiper('.brands-swiper', { | ||
46 | + grabCursor: true, | ||
47 | + slidesPerView: 'auto', | ||
48 | + wrapperClass: 'brands-list', | ||
49 | + slideElement: 'li' | ||
50 | + }); | ||
51 | + } | ||
52 | + | ||
53 | + // 推荐搭配滑动 | ||
54 | + if ($('.recommend-swiper').find('li').length > 1) { | ||
55 | + new Swiper('.recommend-swiper', { | ||
56 | + grabCursor: true, | ||
57 | + slidesPerView: 'auto', | ||
58 | + wrapperClass: 'recommend-list', | ||
59 | + slideElement: 'li' | ||
60 | + }); | ||
61 | + } | ||
62 | + | ||
63 | + // 潮品话题轮播 | ||
64 | + if ($('.trend-topic-swiper').find('li').size() > 1) { | ||
65 | + new Swiper('.trend-topic-swiper', { | ||
66 | + loop: true, | ||
67 | + autoplay: 3000, | ||
68 | + autoplayDisableOnInteraction: false, | ||
69 | + paginationClickable: true, | ||
70 | + slideElement: 'li', | ||
71 | + pagination: '.trend-topic-content .pagination-inner' | ||
72 | + }); | ||
73 | + } | ||
74 | + | ||
75 | + // 新人专享轮播 | ||
76 | + if ($('.fresh-list-swiper').find('li').size() > 1) { | ||
77 | + new Swiper('.fresh-list-swiper', { | ||
78 | + lazyLoading: true, | ||
79 | + lazyLoadingInPrevNext: true, | ||
80 | + grabCursor: true, | ||
81 | + slidesPerView: 'auto', | ||
82 | + slideElement: 'li', | ||
83 | + watchSlidesVisibility: true | ||
84 | + }); | ||
85 | + } | ||
86 | + | ||
87 | + // 潮流上装/经典裤装等轮播 | ||
88 | + $('.category-swiper').each(function (i) { | ||
89 | + swiperClass = 'category-swiper' + i; | ||
90 | + $(this).addClass(swiperClass); | ||
91 | + if ($('.' + swiperClass).find('.swiper-slide').size() > 1) { | ||
92 | + new Swiper('.' + swiperClass, { | ||
93 | + preloadImages: false, | ||
94 | + lazyLoading: true, | ||
95 | + lazyLoadingInPrevNext: true, | ||
96 | + lazyLoadingOnTransitionStart: true, | ||
97 | + loop: true, | ||
98 | + autoplay: 3000, | ||
99 | + autoplayDisableOnInteraction: false, | ||
100 | + paginationClickable: true, | ||
101 | + slideElement: 'li', | ||
102 | + pagination: '.' + swiperClass + ' .pagination-inner' | ||
103 | + }); | ||
104 | + } | ||
105 | + }); | ||
106 | +}); |
@@ -193,17 +193,17 @@ $.extend({ | @@ -193,17 +193,17 @@ $.extend({ | ||
193 | 193 | ||
194 | // 未登录 | 194 | // 未登录 |
195 | $op.prepend( | 195 | $op.prepend( |
196 | - '<a href="http://m.yohobuy.com/signin.html?refer=' + location.href + '">登录</a>' + | 196 | + '<a href="/signin.html?refer=' + location.href + '">登录</a>' + |
197 | '<span class="sep-line">|</span>' + | 197 | '<span class="sep-line">|</span>' + |
198 | - '<a href="http://m.yohobuy.com/reg.html">注册</a>' | 198 | + '<a href="/reg.html">注册</a>' |
199 | ); | 199 | ); |
200 | } else { | 200 | } else { |
201 | 201 | ||
202 | // 已登录 | 202 | // 已登录 |
203 | $op.prepend( | 203 | $op.prepend( |
204 | '<span>Hi,</span>' + | 204 | '<span>Hi,</span>' + |
205 | - '<a class="user-name" href="http://m.yohobuy.com/home?tmp=' + Math.random() + '">' + user[0] + '</a>' + | ||
206 | - '<a href="http://m.yohobuy.com/passport/signout/index">退出</a>' | 205 | + '<a class="user-name" href="/home?tmp=' + Math.random() + '">' + user[0] + '</a>' + |
206 | + '<a href="/passport/signout/index">退出</a>' | ||
207 | ); | 207 | ); |
208 | } | 208 | } |
209 | 209 |
@@ -32,9 +32,9 @@ if ($('#float-layer-btn') && $('#float-layer-btn')[0]) { | @@ -32,9 +32,9 @@ if ($('#float-layer-btn') && $('#float-layer-btn')[0]) { | ||
32 | e.srcEvent.stopPropagation(); | 32 | e.srcEvent.stopPropagation(); |
33 | }); | 33 | }); |
34 | 34 | ||
35 | - if (typeof window.cookie === 'function' && !window.cookie('_float-layer-app')) { | ||
36 | - $('#float-layer-app').show(); | ||
37 | - } else { | ||
38 | - $('#float-layer-app').hide(); | ||
39 | - } | 35 | + // if (typeof window.cookie === 'function' && !window.cookie('_float-layer-app')) { |
36 | + // $('#float-layer-app').show(); | ||
37 | + // } else { | ||
38 | + // $('#float-layer-app').hide(); | ||
39 | + // } | ||
40 | } | 40 | } |
@@ -45,9 +45,9 @@ if ($('#float-layer-btn') && $('#float-layer-btn')[0]) { | @@ -45,9 +45,9 @@ if ($('#float-layer-btn') && $('#float-layer-btn')[0]) { | ||
45 | e.srcEvent.stopPropagation(); | 45 | e.srcEvent.stopPropagation(); |
46 | }); | 46 | }); |
47 | 47 | ||
48 | - if (typeof window.cookie === 'function' && !window.cookie('_float-layer-app')) { | ||
49 | - $('#float-layer-app').show(); | ||
50 | - } else { | ||
51 | - $('#float-layer-app').hide(); | ||
52 | - } | 48 | + // if (typeof window.cookie === 'function' && !window.cookie('_float-layer-app')) { |
49 | + // $('#float-layer-app').show(); | ||
50 | + // } else { | ||
51 | + // $('#float-layer-app').hide(); | ||
52 | + // } | ||
53 | } | 53 | } |
@@ -334,10 +334,10 @@ $('.wei-share').on('touchend', function(e) { | @@ -334,10 +334,10 @@ $('.wei-share').on('touchend', function(e) { | ||
334 | }); | 334 | }); |
335 | 335 | ||
336 | if (typeof window.cookie === 'function' && parseInt(window.cookie('_float-layer-app-close')) != 2) { | 336 | if (typeof window.cookie === 'function' && parseInt(window.cookie('_float-layer-app-close')) != 2) { |
337 | - $('#float-layer-app').show(); | 337 | + //$('#float-layer-app').show(); |
338 | $('.down-bottom').show(); | 338 | $('.down-bottom').show(); |
339 | } else { | 339 | } else { |
340 | - $('#float-layer-app').hide(); | 340 | + //$('#float-layer-app').hide(); |
341 | $('.down-bottom').hide(); | 341 | $('.down-bottom').hide(); |
342 | } | 342 | } |
343 | } | 343 | } |
public/scss/activity/_app-downloads.css
0 → 100644
1 | +body { | ||
2 | + line-height: 1.5; | ||
3 | + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); | ||
4 | +} | ||
5 | + | ||
6 | +table { | ||
7 | + border-collapse: collapse; | ||
8 | + border-spacing: 0 | ||
9 | +} | ||
10 | + | ||
11 | +caption, th, td, b, strong { | ||
12 | + text-align: left; | ||
13 | + font-weight: normal | ||
14 | +} | ||
15 | + | ||
16 | +table, td, th { | ||
17 | + vertical-align: middle | ||
18 | +} | ||
19 | + | ||
20 | +blockquote:before, blockquote:after, q:before, q:after { | ||
21 | + content: "" | ||
22 | +} | ||
23 | + | ||
24 | +blockquote, q { | ||
25 | + quotes: "" "" | ||
26 | +} | ||
27 | + | ||
28 | +a img { | ||
29 | + border: none | ||
30 | +} | ||
31 | + | ||
32 | +em, cite { | ||
33 | + font-style: normal | ||
34 | +} | ||
35 | + | ||
36 | +body { | ||
37 | + background: #fff; | ||
38 | + font: 12px/1.5 Tahoma, '宋体'; | ||
39 | + color: #000 | ||
40 | +} | ||
41 | + | ||
42 | +h1, h2, h3, h4, h5, h6 { | ||
43 | + font-weight: normal; | ||
44 | + color: #111 | ||
45 | +} | ||
46 | + | ||
47 | +a { | ||
48 | + text-decoration: none; | ||
49 | + cursor: pointer | ||
50 | +} | ||
51 | + | ||
52 | +dl, dt, dd, ol, ul, li { | ||
53 | + list-style: none | ||
54 | +} | ||
55 | + | ||
56 | +.left { | ||
57 | + float: left | ||
58 | +} | ||
59 | + | ||
60 | +.right { | ||
61 | + float: right | ||
62 | +} | ||
63 | + | ||
64 | +.clearfix:before, .clearfix:after { | ||
65 | + content: ""; | ||
66 | + display: table | ||
67 | +} | ||
68 | + | ||
69 | +.clearfix:after { | ||
70 | + clear: both | ||
71 | +} | ||
72 | + | ||
73 | +.clearfix { | ||
74 | + *zoom: 1 | ||
75 | +} | ||
76 | + | ||
77 | +body.disable-default-action { | ||
78 | + -webkit-touch-callout: none; | ||
79 | + -webkit-user-select: none; | ||
80 | +} | ||
81 | + | ||
82 | +.loadding-area { | ||
83 | + position: fixed; | ||
84 | + top: 50%; | ||
85 | + left: 50%; | ||
86 | + width: 4rem; | ||
87 | + height: 4rem; | ||
88 | + margin-top: -2rem; | ||
89 | + margin-left: -2rem; | ||
90 | + border-radius: 10%; | ||
91 | + background-color: rgba(0, 0, 0, 0.3); | ||
92 | + z-index: 9999; | ||
93 | +} | ||
94 | + | ||
95 | +.loadding { | ||
96 | + z-index: 999; | ||
97 | + width: 1.1rem; | ||
98 | + position: absolute; | ||
99 | + top: 50%; | ||
100 | + left: 50%; | ||
101 | + margin: -0.55rem 0 0 -0.55rem; | ||
102 | +} | ||
103 | + | ||
104 | +.container { | ||
105 | + max-width: 790px; | ||
106 | + height: auto; | ||
107 | + margin: 0 auto; | ||
108 | + /*overflow: hidden;*/ | ||
109 | +} | ||
110 | + | ||
111 | +.banner { | ||
112 | + height: 6rem; | ||
113 | + background: url(//cdn.yoho.cn/yohocn/160315/images/banner.png) no-repeat right; | ||
114 | + background-size: contain; | ||
115 | + position: fixed; | ||
116 | + top: 0; | ||
117 | + left: 0; | ||
118 | + right: 0; | ||
119 | + z-index: 99; | ||
120 | +} | ||
121 | + | ||
122 | +.main { | ||
123 | + position: relative; | ||
124 | + top: 3.5rem; | ||
125 | + height: 20rem; | ||
126 | +} | ||
127 | + | ||
128 | +.slide-box { | ||
129 | + overflow: hidden; | ||
130 | + position: relative; | ||
131 | + height: 20.78rem; | ||
132 | + width: 100%; | ||
133 | +} | ||
134 | + | ||
135 | +.slide-box .swipe-wrap { | ||
136 | + overflow: hidden; | ||
137 | + position: relative; | ||
138 | + height: 19.775rem; | ||
139 | +} | ||
140 | + | ||
141 | +/*.slide-box .swiper-wrapper { | ||
142 | + padding: 0px 4.578rem; | ||
143 | +}*/ | ||
144 | + | ||
145 | +.slide-box .swiper-slide { | ||
146 | + float: left; | ||
147 | + width: 16rem; | ||
148 | + position: relative; | ||
149 | + height: 20.78rem; | ||
150 | + margin: 0; | ||
151 | + padding: 0; | ||
152 | +} | ||
153 | + | ||
154 | +.slide-box .download-btn { | ||
155 | + background-color: #d0021b; | ||
156 | + color: #fff; | ||
157 | + border-radius: 0.2rem; | ||
158 | + width: 12.8rem; | ||
159 | + height: 2rem; | ||
160 | + line-height: 2rem; | ||
161 | + font-family: arial, helvetica, '黑体'; | ||
162 | + font-size: 0.8rem; | ||
163 | + text-align: center; | ||
164 | + position: absolute; | ||
165 | + bottom: 0px; | ||
166 | + left: 50%; | ||
167 | + margin-left: -6.4rem; | ||
168 | +} | ||
169 | + | ||
170 | +.slide-box .ewm-area { | ||
171 | + width: 12.8rem; | ||
172 | + height: 5.7rem; | ||
173 | + position: absolute; | ||
174 | + bottom: 2.45rem; | ||
175 | + left: 50%; | ||
176 | + margin-left: -6.4rem; | ||
177 | +} | ||
178 | + | ||
179 | +.slide-box .ewm-area img { | ||
180 | + width: 4.6rem; | ||
181 | + margin: 0 auto; | ||
182 | + display: block; | ||
183 | +} | ||
184 | + | ||
185 | +.slide-box .ewm-area .yoho-txt01 { | ||
186 | + background: url(//cdn.yoho.cn/yohocn/160315/images/txt01.png) no-repeat; | ||
187 | +} | ||
188 | + | ||
189 | +.slide-box .ewm-area .yoho-txt02 { | ||
190 | + background: url(//cdn.yoho.cn/yohocn/160315/images/txt02.png) no-repeat; | ||
191 | +} | ||
192 | + | ||
193 | +.slide-box .ewm-area .yoho-txt01, | ||
194 | +.slide-box .ewm-area .yoho-txt02 { | ||
195 | + width: 3.3rem; | ||
196 | + height: 0.7rem; | ||
197 | + display: block; | ||
198 | + margin: 0 auto; | ||
199 | + background-size: contain; | ||
200 | +} | ||
201 | + | ||
202 | +.slide-box .ewm-area .ewm-info { | ||
203 | + background: url(//cdn.yoho.cn/yohocn/160315/images/ewm-info.png) no-repeat; | ||
204 | + width: 7rem; | ||
205 | + height: 0.7rem; | ||
206 | + margin: 0.4rem auto 0 auto; | ||
207 | + background-size: contain; | ||
208 | + clear: both; | ||
209 | +} | ||
210 | + | ||
211 | +.slide-box .ewm-area .ewm-yoho { | ||
212 | + height: 5.4rem; | ||
213 | + width: 4.6rem; | ||
214 | +} | ||
215 | + | ||
216 | +.swiper-yohobuy { | ||
217 | + background: url(//cdn.yoho.cn/yohocn/160315/images/yohobuy.png) no-repeat; | ||
218 | +} | ||
219 | + | ||
220 | +.swiper-yoho { | ||
221 | + background: url(//cdn.yoho.cn/yohocn/160315/images/yoho.png) no-repeat; | ||
222 | +} | ||
223 | + | ||
224 | +.swiper-show { | ||
225 | + background: url(//cdn.yoho.cn/yohocn/160315/images/show.png) no-repeat; | ||
226 | +} | ||
227 | + | ||
228 | +.swiper-mars { | ||
229 | + background: url(//cdn.yoho.cn/yohocn/160315/images/mars.png) no-repeat; | ||
230 | +} | ||
231 | + | ||
232 | +.slide-box .bg { | ||
233 | + display: block; | ||
234 | + margin: 0 auto; | ||
235 | + width: 12.5rem; | ||
236 | + height: 19.2rem; | ||
237 | + background-size: contain; | ||
238 | +} | ||
239 | + | ||
240 | +.slide-pagination { | ||
241 | + margin: 0.125rem 0 0 0; | ||
242 | + text-align: center; | ||
243 | +} | ||
244 | + | ||
245 | +.slide-pagination .swiper-pagination-bullet { | ||
246 | + margin: 0 0.1rem; | ||
247 | +} | ||
248 | + | ||
249 | +.swiper-pagination-bullet-active { | ||
250 | + background: #696969; | ||
251 | +} | ||
252 | + | ||
253 | +.footer { | ||
254 | + text-align: center; | ||
255 | + color: #555; | ||
256 | + line-height: 16px; | ||
257 | + font-size: 0.35rem; | ||
258 | + box-shadow: none; | ||
259 | + position: relative; | ||
260 | + top: 5.3rem; | ||
261 | +} | ||
262 | + | ||
263 | +.mask { | ||
264 | + background: rgba(0, 0, 0, 0.8); | ||
265 | + position: absolute; | ||
266 | + left: 0; | ||
267 | + right: 0; | ||
268 | + top: 0; | ||
269 | + bottom: 0; | ||
270 | + height: 41rem; | ||
271 | + z-index: 999; | ||
272 | + display: none; | ||
273 | +} | ||
274 | + | ||
275 | +.mask .wx-img1 { | ||
276 | + width: 7rem; | ||
277 | + height: 2rem; | ||
278 | + background: url(//cdn.yoho.cn/yohocn/160315/images/wx-img1.png) no-repeat; | ||
279 | + background-size: contain; | ||
280 | + position: fixed; | ||
281 | + top: 0.4rem; | ||
282 | + right: 1rem; | ||
283 | +} | ||
284 | + | ||
285 | +.mask .wx-img2 { | ||
286 | + width: 16rem; | ||
287 | + height: 9rem; | ||
288 | + background: url(//cdn.yoho.cn/yohocn/160315/images/wx-img2.png) no-repeat; | ||
289 | + background-size: cover; | ||
290 | + position: absolute; | ||
291 | + bottom: 4rem; | ||
292 | + right: 50%; | ||
293 | + margin-right: -8rem; | ||
294 | +} | ||
295 | + | ||
296 | +.mask .wx-img3 { | ||
297 | + width: 16rem; | ||
298 | + height: 16rem; | ||
299 | + background: url(//cdn.yoho.cn/yohocn/160315/images/wx-img3.png) no-repeat; | ||
300 | + background-size: cover; | ||
301 | + position: absolute; | ||
302 | + top: 2rem; | ||
303 | + right: 50%; | ||
304 | + margin-right: -7.7rem; | ||
305 | + display: none; | ||
306 | +} |
@@ -153,6 +153,7 @@ | @@ -153,6 +153,7 @@ | ||
153 | background-size: contain; | 153 | background-size: contain; |
154 | } | 154 | } |
155 | .float-layer { | 155 | .float-layer { |
156 | + opacity: 0; | ||
156 | height: 128px; | 157 | height: 128px; |
157 | background: rgba(68, 68, 68, 0.95); | 158 | background: rgba(68, 68, 68, 0.95); |
158 | position: fixed; | 159 | position: fixed; |
@@ -24,23 +24,25 @@ | @@ -24,23 +24,25 @@ | ||
24 | 24 | ||
25 | .brand { | 25 | .brand { |
26 | float: left; | 26 | float: left; |
27 | - width: 158px; | ||
28 | - height: 174px; | ||
29 | - border-right: 1px solid #e0e0e0; | ||
30 | - border-top: 1px solid #e0e0e0; | 27 | + background-color: #e0e0e0; |
28 | + width: 160px; | ||
29 | + height: 160px; | ||
31 | overflow: hidden; | 30 | overflow: hidden; |
31 | + padding: 1PX 1PX 0 0; | ||
32 | + | ||
33 | + &:nth-child(4n + 1) { | ||
34 | + padding: 1PX 0 0 0; | ||
35 | + } | ||
32 | 36 | ||
33 | .brand-logo { | 37 | .brand-logo { |
34 | - display: table-cell; | ||
35 | - width: 158px; | ||
36 | - height: 128px; | ||
37 | - line-height: 128px; | 38 | + width: 100%; |
39 | + height: 100%; | ||
38 | text-align: center; | 40 | text-align: center; |
39 | font-size: 0; | 41 | font-size: 0; |
40 | vertical-align: middle; | 42 | vertical-align: middle; |
41 | 43 | ||
42 | img { | 44 | img { |
43 | - max-width: 100%; | 45 | + width: 100%; |
44 | height: 100%; | 46 | height: 100%; |
45 | } | 47 | } |
46 | } | 48 | } |
@@ -65,9 +67,8 @@ | @@ -65,9 +67,8 @@ | ||
65 | 67 | ||
66 | .more { | 68 | .more { |
67 | float: left; | 69 | float: left; |
68 | - width: 317px; | ||
69 | - height: 174px; | ||
70 | - border-top: 1px solid #e0e0e0; | 70 | + width: 320px; |
71 | + height: 160px; | ||
71 | overflow: hidden; | 72 | overflow: hidden; |
72 | 73 | ||
73 | a { | 74 | a { |
@@ -539,6 +539,7 @@ | @@ -539,6 +539,7 @@ | ||
539 | line-height: 90px; | 539 | line-height: 90px; |
540 | background-image: linear-gradient(#323232, #414141); | 540 | background-image: linear-gradient(#323232, #414141); |
541 | overflow: hidden; | 541 | overflow: hidden; |
542 | + position: relative; | ||
542 | 543 | ||
543 | .iconfont { | 544 | .iconfont { |
544 | color: #fff; | 545 | color: #fff; |
-
Please register or login to post a comment