run gulp ge to gzip css js
Showing
57 changed files
with
3322 additions
and
0 deletions
static/dist/myohobuy/0.0.2/index-debug.js
0 → 100644
1 | +define("index", ["zepto","lazyload","swiper","mlellipsis","iscroll-probe","index"], function(require, exports, module){ | ||
2 | +var yohobuy; | ||
3 | + | ||
4 | +require("js/common"); | ||
5 | + | ||
6 | +require("js/passport/index"); | ||
7 | +require("js/guang/index"); | ||
8 | +require("js/home/index"); | ||
9 | +require("js/product/index"); | ||
10 | +require("js/index/index"); | ||
11 | + | ||
12 | +module.exports = yohobuy; | ||
13 | + | ||
14 | +}); | ||
15 | +define("js/common", ["zepto"], function(require, exports, module){ | ||
16 | +/** | ||
17 | + * 页面公共逻辑 | ||
18 | + * @author: xuqi<qi.xu@yoho.cn> | ||
19 | + * @date: 2015/10/21 | ||
20 | + */ | ||
21 | +var $ = require("zepto"); | ||
22 | + | ||
23 | +function cookie(name) { | ||
24 | + var cookies = document.cookie, | ||
25 | + cookieVal, | ||
26 | + offset; | ||
27 | + | ||
28 | + if (document.cookie && document.cookie !== '') { | ||
29 | + offset = cookies.indexOf(name + '='); | ||
30 | + if (offset > -1) { | ||
31 | + offset += name.length + 1; | ||
32 | + | ||
33 | + cookieVal = decodeURIComponent($.trim(cookies.substring(offset, cookies.indexOf(';', offset)))); | ||
34 | + } | ||
35 | + } | ||
36 | + | ||
37 | + return cookieVal; | ||
38 | +} | ||
39 | + | ||
40 | +function getUser() { | ||
41 | + var c = cookie('_UID'), | ||
42 | + user; | ||
43 | + | ||
44 | + if (typeof c === 'undefined') { | ||
45 | + return 0; | ||
46 | + } | ||
47 | + | ||
48 | + user = c.split('::'); | ||
49 | + | ||
50 | + if (typeof user === 'undefined' || user.length < 4) { | ||
51 | + return 0; | ||
52 | + } | ||
53 | + | ||
54 | + return user; | ||
55 | +} | ||
56 | + | ||
57 | +function getUid() { | ||
58 | + var user = getUser(); | ||
59 | + | ||
60 | + if (user === 0) { | ||
61 | + return 0; | ||
62 | + } | ||
63 | + | ||
64 | + return user[1]; | ||
65 | +} | ||
66 | + | ||
67 | +function getShoppingKey() { | ||
68 | + var c = cookie('_g'); | ||
69 | + | ||
70 | + if (typeof c === 'undefined') { | ||
71 | + return ''; | ||
72 | + } | ||
73 | + | ||
74 | + return JSON.parse(c).k; | ||
75 | +} | ||
76 | + | ||
77 | +//页面通用底部位置及status设置 | ||
78 | +(function() { | ||
79 | + var $footer = $('#yoho-footer'), | ||
80 | + $op = $footer.children('.op-row'); | ||
81 | + | ||
82 | + var user = getUser(); | ||
83 | + | ||
84 | + if ($('body').height() < $(window).height()) { | ||
85 | + $footer.addClass('bottom'); | ||
86 | + } | ||
87 | + | ||
88 | + if (user === 0) { | ||
89 | + | ||
90 | + //未登录 | ||
91 | + $op.prepend( | ||
92 | + '<a href="http://m.yohobuy.com/signin.html">登录</a>' + | ||
93 | + '<span class="sep-line">|</span>' + | ||
94 | + '<a href="http://m.yohobuy.com/reg.html">注册</a>' | ||
95 | + ); | ||
96 | + } else { | ||
97 | + | ||
98 | + //已登录 | ||
99 | + $op.prepend( | ||
100 | + 'Hi,' + | ||
101 | + '<a class="user-name" href="http://m.yohobuy.com/home?tmp=' + Math.random() + '">' + user[0] + '</a>' + | ||
102 | + '<a href="http://m.yohobuy.com/passport/signout/index?token=' + user[3] + '">退出</a>' | ||
103 | + ); | ||
104 | + } | ||
105 | + | ||
106 | + $footer.removeClass('hide'); | ||
107 | +}()); | ||
108 | + | ||
109 | +//暴露公共接口 | ||
110 | +window.cookie = cookie; | ||
111 | + | ||
112 | +window.getUser = getUser; | ||
113 | + | ||
114 | +window.getUid = getUid; | ||
115 | + | ||
116 | +window.getShoppingKey = getShoppingKey; | ||
117 | +}); | ||
118 | +define("js/passport/index", ["zepto"], function(require, exports, module){ | ||
119 | +/** | ||
120 | + * 注册、登录、密码找回打包入口 | ||
121 | + * @author: xuqi<qi.xu@yoho.cn> | ||
122 | + * @date: 2015/10/8 | ||
123 | + */ | ||
124 | + | ||
125 | +//注册 | ||
126 | +require("js/passport/register/register"); | ||
127 | +require("js/passport/register/code"); | ||
128 | +require("js/passport/register/password"); | ||
129 | + | ||
130 | +//登录 | ||
131 | +require("js/passport/login/login"); | ||
132 | +require("js/passport/login/international"); | ||
133 | + | ||
134 | +//密码找回 | ||
135 | +require("js/passport/back/mobile"); | ||
136 | +require("js/passport/back/code"); | ||
137 | +require("js/passport/back/email"); | ||
138 | +require("js/passport/back/email-success"); | ||
139 | +require("js/passport/back/new-password"); | ||
140 | +}); | ||
141 | +define("js/passport/register/register", ["zepto"], function(require, exports, module){ | ||
142 | +/** | ||
143 | + * 注册 | ||
144 | + * @author: xuqi<qi.xu@yoho.cn> | ||
145 | + * @date: 2015/10/8 | ||
146 | + */ | ||
147 | +var $ = require("zepto"); | ||
148 | + | ||
149 | +var $phoneNum = $('#phone-num'), | ||
150 | + $countrySelect = $('#country-select'), | ||
151 | + $areaCode = $('#area-code'), | ||
152 | + $btnNext = $('#btn-next'); | ||
153 | + | ||
154 | +var api = require("js/passport/api"); | ||
155 | +var tip = require("js/plugin/tip"); | ||
156 | + | ||
157 | +var trim = $.trim; | ||
158 | +var showErrTip = tip.show; | ||
159 | + | ||
160 | +api.selectCssHack($('#country-select')); | ||
161 | + | ||
162 | +api.bindClearEvt(); | ||
163 | + | ||
164 | +$phoneNum.bind('input', function() { | ||
165 | + if (trim($phoneNum.val()) === '') { | ||
166 | + $btnNext.addClass('disable'); | ||
167 | + } else { | ||
168 | + $btnNext.removeClass('disable'); | ||
169 | + } | ||
170 | +}); | ||
171 | + | ||
172 | +$countrySelect.change(function() { | ||
173 | + $areaCode.text($countrySelect.val()); | ||
174 | +}); | ||
175 | + | ||
176 | +$btnNext.on('tap', function() { | ||
177 | + var pn = trim($phoneNum.val()), | ||
178 | + areaCode = $countrySelect.val(); | ||
179 | + | ||
180 | + if ($btnNext.hasClass('disable')) { | ||
181 | + return; | ||
182 | + } | ||
183 | + | ||
184 | + if (api.phoneRegx[areaCode].test(pn)) { | ||
185 | + $.ajax({ | ||
186 | + url: '/passport/reg/verifymobile', | ||
187 | + type: 'POST', | ||
188 | + data: { | ||
189 | + areaCode: areaCode.replace('+', ''), | ||
190 | + phoneNum: pn | ||
191 | + }, | ||
192 | + success: function(data) { | ||
193 | + if (data.code === 200) { | ||
194 | + location.href = data.data; | ||
195 | + } else { | ||
196 | + showErrTip(data.message); | ||
197 | + } | ||
198 | + } | ||
199 | + }); | ||
200 | + } else { | ||
201 | + showErrTip('手机号格式不正确,请重新输入'); | ||
202 | + } | ||
203 | +}); | ||
204 | +}); | ||
205 | +define("js/passport/api", ["zepto"], function(require, exports, module){ | ||
206 | +/** | ||
207 | + * 登录注册公用API | ||
208 | + * @author: xuqi<qi.xu@yoho.cn> | ||
209 | + * @date: 2015/10/8 | ||
210 | + */ | ||
211 | +var $ = require("zepto"); | ||
212 | + | ||
213 | +var trim = $.trim; | ||
214 | + | ||
215 | +//邮箱验证规则 | ||
216 | +var emailRegx = /^([a-zA-Z0-9]+[_|\_|\.|-]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.|-]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/; | ||
217 | + | ||
218 | +//手机号码验证规则 | ||
219 | +var phoneRegx = { | ||
220 | + '+86': /^1[35847]{1}[0-9]{9}$/, | ||
221 | + '+852': /^[965]{1}[0-9]{7}$/, | ||
222 | + '+853': /^[0-9]{8}$/, | ||
223 | + '+886': /^[0-9]{10}$/, | ||
224 | + '+65': /^[98]{1}[0-9]{7}$/, | ||
225 | + '+60': /^1[1234679]{1}[0-9]{8}$/, | ||
226 | + '+1': /^[0-9]{10}$/, | ||
227 | + '+82': /^01[0-9]{9}$/, | ||
228 | + '+44': /^7[789][0-9]{8}$/, | ||
229 | + '+81': /^0[9|8|7][0-9]{9}$/, | ||
230 | + '+61': /^[0-9]{11}$/ | ||
231 | +}; | ||
232 | + | ||
233 | +//密码显示隐藏 | ||
234 | +function bindEyesEvt() { | ||
235 | + var $hasEye = $('.has-eye'), | ||
236 | + $eye; | ||
237 | + | ||
238 | + $hasEye.append('<div class="eye close"></div>'); | ||
239 | + $eye = $hasEye.children('.eye'); | ||
240 | + | ||
241 | + $eye.on('tap', function(e) { | ||
242 | + var $this = $(this), | ||
243 | + $pwd = $this.siblings('.pwd'); | ||
244 | + | ||
245 | + e.preventDefault(); | ||
246 | + $this.toggleClass('close'); | ||
247 | + | ||
248 | + //切换密码显示和文本显示 | ||
249 | + if ($this.hasClass('close')) { | ||
250 | + $pwd.attr('type', 'password'); | ||
251 | + } else { | ||
252 | + $pwd.attr('type', 'text'); | ||
253 | + } | ||
254 | + $pwd.focus(); | ||
255 | + }); | ||
256 | +} | ||
257 | + | ||
258 | +// 清空账号显示 | ||
259 | +function bindClearEvt() { | ||
260 | + var $hasClear = $('.has-clear'), | ||
261 | + $clear; | ||
262 | + | ||
263 | + $hasClear.append('<div class="clear-input"></div>'); | ||
264 | + $clear = $hasClear.children('.clear-input'); | ||
265 | + | ||
266 | + $clear.on('tap', function(e) { | ||
267 | + var $input = $clear.siblings('.input'); | ||
268 | + | ||
269 | + $input.val('').trigger('input').focus(); | ||
270 | + e.preventDefault(); | ||
271 | + }); | ||
272 | + | ||
273 | + //反向逻辑 | ||
274 | + $hasClear.children('.input').bind('input', function() { | ||
275 | + var $this = $(this), | ||
276 | + $thisClear = $this.siblings('.clear-input'), | ||
277 | + val = trim($this.val()); | ||
278 | + | ||
279 | + if (val === '') { | ||
280 | + $thisClear.hide(); | ||
281 | + } else { | ||
282 | + $thisClear.show(); | ||
283 | + } | ||
284 | + }); | ||
285 | +} | ||
286 | + | ||
287 | +// 密码长度验证 | ||
288 | +function pwdValidate(pwd) { | ||
289 | + if (pwd.length >= 6 && pwd.length <= 20) { | ||
290 | + return true; | ||
291 | + } | ||
292 | + return false; | ||
293 | +} | ||
294 | + | ||
295 | +// hack for resolving direction:rtl didn't work in android uc | ||
296 | +function selectCssHack($countrySelect) { | ||
297 | + var u = navigator.userAgent; | ||
298 | + | ||
299 | + function autoSelectWidth() { | ||
300 | + var wordCount = $countrySelect.find('option:selected').text().length; | ||
301 | + | ||
302 | + switch (wordCount) { | ||
303 | + | ||
304 | + //分别有2,3,4个汉字的情况 | ||
305 | + case 2: | ||
306 | + $countrySelect.outerWidth(90); | ||
307 | + break; | ||
308 | + case 3: | ||
309 | + $countrySelect.outerWidth(110); | ||
310 | + break; | ||
311 | + default: | ||
312 | + $countrySelect.outerWidth(130); | ||
313 | + } | ||
314 | + } | ||
315 | + | ||
316 | + if (u.match(/uc/i) && u.match(/android/i)) { | ||
317 | + $countrySelect.change(function() { | ||
318 | + autoSelectWidth(); | ||
319 | + }); | ||
320 | + } else { | ||
321 | + $countrySelect.removeClass('in-android-uc'); | ||
322 | + } | ||
323 | +} | ||
324 | + | ||
325 | +//Exports APIs | ||
326 | +module.exports = { | ||
327 | + emailRegx: emailRegx, | ||
328 | + phoneRegx: phoneRegx, | ||
329 | + bindEyesEvt: bindEyesEvt, | ||
330 | + bindClearEvt: bindClearEvt, | ||
331 | + pwdValidate: pwdValidate, | ||
332 | + selectCssHack: selectCssHack | ||
333 | +}; | ||
334 | +}); | ||
335 | +define("js/plugin/tip", ["zepto"], function(require, exports, module){ | ||
336 | +/** | ||
337 | + * 弹框提示 | ||
338 | + * @author: xuqi<qi.xu@yoho.cn> | ||
339 | + * @date: 2015/10/10 | ||
340 | + */ | ||
341 | +var $ = require("zepto"); | ||
342 | + | ||
343 | +var $tip, tipItime; | ||
344 | + | ||
345 | +/** | ||
346 | + * 初始化提示框 | ||
347 | + */ | ||
348 | +(function() { | ||
349 | + var tipHtml = '<div id="yoho-tip" class="yoho-tip"></div>'; | ||
350 | + | ||
351 | + //插入提示HTML | ||
352 | + $('.yoho-page').append(tipHtml); | ||
353 | + | ||
354 | + $tip = $('#yoho-tip'); | ||
355 | + $tip.on('tap', function() { | ||
356 | + $tip.hide(); | ||
357 | + | ||
358 | + //清除Timeout | ||
359 | + clearTimeout(tipItime); | ||
360 | + }); | ||
361 | +}()); | ||
362 | + | ||
363 | +/** | ||
364 | + * 显示提示 | ||
365 | + */ | ||
366 | +function show(con, dur) { | ||
367 | + var content, duration; | ||
368 | + | ||
369 | + if (typeof con === 'undefined') { | ||
370 | + return; | ||
371 | + } | ||
372 | + | ||
373 | + content = con.toString(); | ||
374 | + duration = (dur && dur > 0) ? dur : 2000; | ||
375 | + | ||
376 | + $tip.text(content).show(); | ||
377 | + | ||
378 | + tipItime = setTimeout(function() { | ||
379 | + if ($tip.css('display') === 'block') { | ||
380 | + $tip.hide(); | ||
381 | + } | ||
382 | + }, duration); | ||
383 | +} | ||
384 | + | ||
385 | +exports.show = show; | ||
386 | +}); | ||
387 | +define("js/passport/register/code", ["zepto"], function(require, exports, module){ | ||
388 | +/** | ||
389 | + * 注册-验证码 | ||
390 | + * @author: xuqi<qi.xu@yoho.cn> | ||
391 | + * @date: 2015/10/8 | ||
392 | + */ | ||
393 | + | ||
394 | +require("js/passport/code")(true); | ||
395 | +}); | ||
396 | +define("js/passport/code", ["zepto"], function(require, exports, module){ | ||
397 | +/** | ||
398 | + * 注册/找回密码-验证码 | ||
399 | + * @author: xuqi<qi.xu@yoho.cn> | ||
400 | + * @date: 2015/10/8 | ||
401 | + */ | ||
402 | +var $ = require("zepto"); | ||
403 | + | ||
404 | +module.exports = function(useInRegister) { | ||
405 | + var $captcha = $('#captcha'), | ||
406 | + $btnNext = $('#btn-next'), | ||
407 | + $captchaTip = $('#captcha-tip'), | ||
408 | + phoneNum = $('#phone-num').val(), | ||
409 | + areaCode = $('#area-code').val().replace('+', ''); | ||
410 | + | ||
411 | + var api = require("js/passport/api"); | ||
412 | + var tip = require("js/plugin/tip"); | ||
413 | + | ||
414 | + var trim = $.trim; | ||
415 | + var showErrTip = tip.show; | ||
416 | + | ||
417 | + var urlMid = useInRegister ? 'reg' : 'back'; | ||
418 | + | ||
419 | + function countDown() { | ||
420 | + var count = 59, | ||
421 | + itime; | ||
422 | + | ||
423 | + itime = setInterval(function() { | ||
424 | + if (count === 0) { | ||
425 | + $captchaTip.text('重发验证码').removeClass('disable'); | ||
426 | + clearInterval(itime); | ||
427 | + } else { | ||
428 | + $captchaTip.text('重发验证码 (' + count-- + '秒)'); | ||
429 | + } | ||
430 | + }, 1000); | ||
431 | + } | ||
432 | + | ||
433 | + api.bindClearEvt(); | ||
434 | + | ||
435 | + $captcha.bind('input', function() { | ||
436 | + if (trim($captcha.val()) !== '') { | ||
437 | + $btnNext.removeClass('disable'); | ||
438 | + } else { | ||
439 | + $btnNext.addClass('disable'); | ||
440 | + } | ||
441 | + }); | ||
442 | + | ||
443 | + //重新发送验证码 | ||
444 | + $captchaTip.on('tap', function() { | ||
445 | + if ($captchaTip.hasClass('disable')) { | ||
446 | + return; | ||
447 | + } | ||
448 | + | ||
449 | + $.ajax({ | ||
450 | + type: 'POST', | ||
451 | + url: '/passport/' + urlMid + '/sendcode', | ||
452 | + data: { | ||
453 | + phoneNum: phoneNum, | ||
454 | + areaCode: areaCode | ||
455 | + }, | ||
456 | + success: function(data) { | ||
457 | + if (data.code === 200) { | ||
458 | + $captchaTip.text('重发验证码 (60秒)').addClass('disable'); | ||
459 | + countDown(); | ||
460 | + } else { | ||
461 | + | ||
462 | + //验证码不正确,显示提示 | ||
463 | + showErrTip(data.message); | ||
464 | + } | ||
465 | + } | ||
466 | + }); | ||
467 | + }); | ||
468 | + | ||
469 | + $btnNext.on('tap', function() { | ||
470 | + if ($btnNext.hasClass('disable')) { | ||
471 | + return; | ||
472 | + } | ||
473 | + | ||
474 | + $.ajax({ | ||
475 | + type: 'POST', | ||
476 | + url: '/passport/' + urlMid + '/verifycode', | ||
477 | + data: { | ||
478 | + phoneNum: phoneNum, | ||
479 | + areaCode: areaCode, | ||
480 | + code: trim($captcha.val()), | ||
481 | + token: $('#token').val() | ||
482 | + }, | ||
483 | + success: function(data) { | ||
484 | + if (data.code === 200) { | ||
485 | + location.href = data.data; | ||
486 | + } else { | ||
487 | + | ||
488 | + //验证码不正确,显示提示 | ||
489 | + showErrTip(data.message); | ||
490 | + } | ||
491 | + } | ||
492 | + }); | ||
493 | + }); | ||
494 | + | ||
495 | + countDown(); | ||
496 | +}; | ||
497 | +}); | ||
498 | +define("js/passport/register/password", ["zepto"], function(require, exports, module){ | ||
499 | +/** | ||
500 | + * 注册-密码 | ||
501 | + * @author: xuqi<qi.xu@yoho.cn> | ||
502 | + * @date: 2015/10/8 | ||
503 | + */ | ||
504 | +var $ = require("zepto"); | ||
505 | + | ||
506 | +var $pwd = $('#pwd'), | ||
507 | + $btnSure = $('#btn-sure'); | ||
508 | + | ||
509 | +var api = require("js/passport/api"); | ||
510 | +var tip = require("js/plugin/tip"); | ||
511 | + | ||
512 | +var trim = $.trim; | ||
513 | +var showErrTip = tip.show; | ||
514 | + | ||
515 | +api.bindEyesEvt(); | ||
516 | + | ||
517 | +$pwd.bind('input', function() { | ||
518 | + if (trim($pwd.val()) === '') { | ||
519 | + $btnSure.addClass('disable'); | ||
520 | + } else { | ||
521 | + $btnSure.removeClass('disable'); | ||
522 | + } | ||
523 | +}); | ||
524 | + | ||
525 | +$btnSure.on('tap', function() { | ||
526 | + var pwd = trim($pwd.val()); | ||
527 | + | ||
528 | + if ($btnSure.hasClass('disable')) { | ||
529 | + return; | ||
530 | + } | ||
531 | + | ||
532 | + if (api.pwdValidate(pwd) === false) { | ||
533 | + showErrTip('密码6-20位,请重新输入'); | ||
534 | + } else { | ||
535 | + $.ajax({ | ||
536 | + type: 'POST', | ||
537 | + url: '/passport/reg/setpassword', | ||
538 | + data: { | ||
539 | + password: pwd, | ||
540 | + phoneNum: $('#phone-num').val(), | ||
541 | + areaCode: $('#area-code').val(), | ||
542 | + token: $('#token').val() | ||
543 | + }, | ||
544 | + success: function(data) { | ||
545 | + if (data.code === 200) { | ||
546 | + showErrTip('注册成功'); | ||
547 | + | ||
548 | + //1000ms后跳转页面 | ||
549 | + setTimeout(function() { | ||
550 | + location.href = data.data; | ||
551 | + }, 1000); | ||
552 | + } else { | ||
553 | + if (data.code === 401 || data.code === 404 || data.code === 505) { | ||
554 | + showErrTip(data.message); | ||
555 | + } else { | ||
556 | + showErrTip(data.message); | ||
557 | + setTimeout(function() { | ||
558 | + location.href = data.data; | ||
559 | + }, 1000); | ||
560 | + } | ||
561 | + } | ||
562 | + } | ||
563 | + }); | ||
564 | + } | ||
565 | +}); | ||
566 | +}); | ||
567 | +define("js/passport/login/login", ["zepto"], function(require, exports, module){ | ||
568 | +/** | ||
569 | + * 登录 | ||
570 | + * @author: xuqi<qi.xu@yoho.cn> | ||
571 | + * @date: 2015/9/30 | ||
572 | + */ | ||
573 | +var $ = require("zepto"); | ||
574 | + | ||
575 | +var $account = $('#account'), | ||
576 | + $pwd = $('#pwd'), | ||
577 | + $loginBtn = $('#btn-login'), | ||
578 | + | ||
579 | + $mask = $('#retrive-pwd-mask'), | ||
580 | + $ways = $('#retrive-pwd-ways'), | ||
581 | + | ||
582 | + accPass = false, | ||
583 | + pwdPass = false; | ||
584 | + | ||
585 | +var api = require("js/passport/api"); | ||
586 | +var tip = require("js/plugin/tip"); | ||
587 | + | ||
588 | +var trim = $.trim; | ||
589 | +var showErrTip = tip.show; | ||
590 | + | ||
591 | +//登录按钮状态切换 | ||
592 | +function switchLoginBtnStatus() { | ||
593 | + if (accPass && pwdPass) { | ||
594 | + $loginBtn.removeClass('disable'); | ||
595 | + } else { | ||
596 | + $loginBtn.addClass('disable'); | ||
597 | + } | ||
598 | +} | ||
599 | + | ||
600 | +//显示找回密码面板 | ||
601 | +function showRetrivePanel() { | ||
602 | + $mask.show(); | ||
603 | + $ways.show(); | ||
604 | +} | ||
605 | + | ||
606 | +//隐藏找回密码面板 | ||
607 | +function hideRetrivePanel() { | ||
608 | + $mask.hide(); | ||
609 | + $ways.hide(); | ||
610 | +} | ||
611 | + | ||
612 | +//密码显示与隐藏 | ||
613 | +api.bindEyesEvt(); | ||
614 | + | ||
615 | +//清空账号输入框 | ||
616 | +api.bindClearEvt(); | ||
617 | + | ||
618 | +$account.bind('input', function() { | ||
619 | + if (trim($account.val()) !== '') { | ||
620 | + accPass = true; | ||
621 | + } else { | ||
622 | + accPass = false; | ||
623 | + } | ||
624 | + switchLoginBtnStatus(); | ||
625 | +}); | ||
626 | + | ||
627 | +$pwd.bind('input', function() { | ||
628 | + if (trim($pwd.val()) === '') { | ||
629 | + pwdPass = false; | ||
630 | + } else { | ||
631 | + pwdPass = true; | ||
632 | + } | ||
633 | + switchLoginBtnStatus(); | ||
634 | +}); | ||
635 | + | ||
636 | + | ||
637 | +// Login | ||
638 | +$loginBtn.on('tap', function() { | ||
639 | + var acc = trim($account.val()), | ||
640 | + pwd = trim($pwd.val()); | ||
641 | + | ||
642 | + if ($loginBtn.hasClass('disable')) { | ||
643 | + return; | ||
644 | + } | ||
645 | + | ||
646 | + //验证账号(数字或者邮箱)和密码合理性 | ||
647 | + if ((/^[0-9]+$/.test(acc) || api.emailRegx.test(acc)) && api.pwdValidate(pwd)) { | ||
648 | + $.ajax({ | ||
649 | + type: 'POST', | ||
650 | + url: '/passport/login/auth', | ||
651 | + data: { | ||
652 | + account: acc, | ||
653 | + password: pwd | ||
654 | + }, | ||
655 | + success: function(data) { | ||
656 | + if (data.code === 200) { | ||
657 | + showErrTip('登录成功'); | ||
658 | + | ||
659 | + //1s后跳转页面 | ||
660 | + setTimeout(function() { | ||
661 | + location.href = data.data; | ||
662 | + }, 1000); | ||
663 | + } else { | ||
664 | + showErrTip(data.message); | ||
665 | + } | ||
666 | + }, | ||
667 | + error: function() { | ||
668 | + showErrTip('网络断开连接啦~'); | ||
669 | + } | ||
670 | + }); | ||
671 | + } else { | ||
672 | + showErrTip('账号或密码有错误,请重新输入'); | ||
673 | + } | ||
674 | +}); | ||
675 | + | ||
676 | + | ||
677 | +$('#forget-pwd').on('tap', function() { | ||
678 | + showRetrivePanel(); | ||
679 | +}); | ||
680 | + | ||
681 | +$mask.on('tap', function() { | ||
682 | + hideRetrivePanel(); | ||
683 | +}); | ||
684 | + | ||
685 | +$('#cancel-retrive').on('tap', function(e) { | ||
686 | + e.preventDefault(); | ||
687 | + hideRetrivePanel(); | ||
688 | +}); | ||
689 | + | ||
690 | +//对初始有默认值的情况去初始化登录按钮状态 | ||
691 | +$account.trigger('input'); | ||
692 | +$pwd.trigger('input'); | ||
693 | +}); | ||
694 | +define("js/passport/login/international", ["zepto"], function(require, exports, module){ | ||
695 | +/** | ||
696 | + * 国际账号登录 | ||
697 | + * @author: xuqi<qi.xu@yoho.cn> | ||
698 | + * @date: 2015/10/8 | ||
699 | + */ | ||
700 | +var $ = require("zepto"); | ||
701 | + | ||
702 | +var $phoneNum = $('#phone-num'), | ||
703 | + $countrySelect = $('#country-select'), | ||
704 | + $areaCode = $('#area-code'), | ||
705 | + $pwd = $('#pwd'), | ||
706 | + $loginBtn = $('#btn-login'), | ||
707 | + | ||
708 | + pnPass = false, | ||
709 | + pwdPass = false; | ||
710 | + | ||
711 | +var api = require("js/passport/api"); | ||
712 | +var tip = require("js/plugin/tip"); | ||
713 | + | ||
714 | +var trim = $.trim; | ||
715 | +var showErrTip = tip.show; | ||
716 | + | ||
717 | +//登录按钮状态切换 | ||
718 | +function switchLoginBtnStatus() { | ||
719 | + if (pnPass && pwdPass) { | ||
720 | + $loginBtn.removeClass('disable'); | ||
721 | + } else { | ||
722 | + $loginBtn.addClass('disable'); | ||
723 | + } | ||
724 | +} | ||
725 | + | ||
726 | +//Android-UC下显示select的direction:rtl无效的临时解决办法 | ||
727 | +api.selectCssHack($countrySelect); | ||
728 | + | ||
729 | +//显示隐藏密码 | ||
730 | +api.bindEyesEvt(); | ||
731 | + | ||
732 | +//清空手机号码 | ||
733 | +api.bindClearEvt(); | ||
734 | + | ||
735 | +$phoneNum.bind('input', function() { | ||
736 | + if (trim($phoneNum.val()) === '') { | ||
737 | + pnPass = false; | ||
738 | + } else { | ||
739 | + pnPass = true; | ||
740 | + } | ||
741 | + | ||
742 | + switchLoginBtnStatus(); | ||
743 | +}); | ||
744 | + | ||
745 | +$pwd.bind('input', function() { | ||
746 | + var pwd = trim($pwd.val()); | ||
747 | + | ||
748 | + if (pwd === '') { | ||
749 | + pwdPass = false; | ||
750 | + } else { | ||
751 | + pwdPass = true; | ||
752 | + } | ||
753 | + | ||
754 | + switchLoginBtnStatus(); | ||
755 | +}); | ||
756 | + | ||
757 | +$countrySelect.change(function() { | ||
758 | + $areaCode.text($countrySelect.val()); | ||
759 | +}); | ||
760 | + | ||
761 | +$loginBtn.on('tap', function() { | ||
762 | + var pn = trim($phoneNum.val()), | ||
763 | + areaCode = $countrySelect.val(), | ||
764 | + pwd = trim($pwd.val()); | ||
765 | + | ||
766 | + if ($loginBtn.hasClass('disable')) { | ||
767 | + return; | ||
768 | + } | ||
769 | + | ||
770 | + if (api.phoneRegx[areaCode].test(pn) && api.pwdValidate(pwd)) { | ||
771 | + $.ajax({ | ||
772 | + type: 'POST', | ||
773 | + url: '/passport/login/auth', | ||
774 | + data: { | ||
775 | + areaCode: areaCode.replace('+', ''), | ||
776 | + account: pn, | ||
777 | + password: pwd | ||
778 | + }, | ||
779 | + success: function(data) { | ||
780 | + if (data.code === 200) { | ||
781 | + showErrTip('登录成功'); | ||
782 | + | ||
783 | + //1000ms后跳转页面 | ||
784 | + setTimeout(function() { | ||
785 | + location.href = data.data; | ||
786 | + }, 1000); | ||
787 | + } else { | ||
788 | + showErrTip(data.message); | ||
789 | + } | ||
790 | + }, | ||
791 | + error: function() { | ||
792 | + showErrTip('网络断开连接啦~'); | ||
793 | + } | ||
794 | + }); | ||
795 | + } else { | ||
796 | + showErrTip('账号或密码有错误,请重新输入'); | ||
797 | + } | ||
798 | +}); | ||
799 | + | ||
800 | +//对初始有默认值的情况去初始化登录按钮状态 | ||
801 | +$phoneNum.trigger('input'); | ||
802 | +$pwd.trigger('input'); | ||
803 | +}); | ||
804 | +define("js/passport/back/mobile", ["zepto"], function(require, exports, module){ | ||
805 | +/** | ||
806 | + * 找回密码-手机 | ||
807 | + * @author: xuqi<qi.xu@yoho.cn> | ||
808 | + * @date: 2015/10/8 | ||
809 | + */ | ||
810 | +var $ = require("zepto"); | ||
811 | + | ||
812 | +var $phoneNum = $('#phone-num'), | ||
813 | + $countrySelect = $('#country-select'), | ||
814 | + $areaCode = $('#area-code'), | ||
815 | + $btnNext = $('#btn-next'); | ||
816 | + | ||
817 | +var api = require("js/passport/api"); | ||
818 | +var tip = require("js/plugin/tip"); | ||
819 | + | ||
820 | +var trim = $.trim; | ||
821 | +var showErrTip = tip.show; | ||
822 | + | ||
823 | +api.selectCssHack($('#country-select')); | ||
824 | + | ||
825 | +api.bindClearEvt(); | ||
826 | + | ||
827 | +$phoneNum.bind('input', function() { | ||
828 | + if (trim($phoneNum.val()) === '') { | ||
829 | + $btnNext.addClass('disable'); | ||
830 | + } else { | ||
831 | + $btnNext.removeClass('disable'); | ||
832 | + } | ||
833 | +}); | ||
834 | + | ||
835 | +$countrySelect.change(function() { | ||
836 | + $areaCode.text($countrySelect.val()); | ||
837 | +}); | ||
838 | + | ||
839 | +$btnNext.on('tap', function() { | ||
840 | + var pn = trim($phoneNum.val()), | ||
841 | + area = $countrySelect.val(); | ||
842 | + | ||
843 | + if ($btnNext.hasClass('disable')) { | ||
844 | + return; | ||
845 | + } | ||
846 | + | ||
847 | + if (api.phoneRegx[area].test(pn)) { | ||
848 | + $.ajax({ | ||
849 | + url: '/passport/back/sendcode', | ||
850 | + type: 'POST', | ||
851 | + data: { | ||
852 | + areaCode: area.replace('+', ''), | ||
853 | + phoneNum: pn | ||
854 | + }, | ||
855 | + success: function(data) { | ||
856 | + if (data.code === 200) { | ||
857 | + location.href = data.data; | ||
858 | + } else { | ||
859 | + showErrTip(data.message); | ||
860 | + } | ||
861 | + } | ||
862 | + }); | ||
863 | + } else { | ||
864 | + showErrTip('手机号格式不正确,请重新输入'); | ||
865 | + } | ||
866 | +}); | ||
867 | +}); | ||
868 | +define("js/passport/back/code", ["zepto"], function(require, exports, module){ | ||
869 | +/** | ||
870 | + * 找回密码-验证码 | ||
871 | + * @author: xuqi<qi.xu@yoho.cn> | ||
872 | + * @date: 2015/10/8 | ||
873 | + */ | ||
874 | + | ||
875 | +require("js/passport/code")(false); | ||
876 | +}); | ||
877 | +define("js/passport/back/email", ["zepto"], function(require, exports, module){ | ||
878 | +/** | ||
879 | + * 找回密码-邮箱找回 | ||
880 | + * @author: xuqi<qi.xu@yoho.cn> | ||
881 | + * @date: 2015/10/8 | ||
882 | + */ | ||
883 | +var $ = require("zepto"); | ||
884 | + | ||
885 | +var $email = $('#email'), | ||
886 | + $btnSure = $('#btn-sure'); | ||
887 | + | ||
888 | +var api = require("js/passport/api"); | ||
889 | +var tip = require("js/plugin/tip"); | ||
890 | + | ||
891 | +var trim = $.trim; | ||
892 | +var showErrTip = tip.show; | ||
893 | + | ||
894 | +api.bindClearEvt(); | ||
895 | + | ||
896 | +$email.bind('input', function() { | ||
897 | + if (trim($email.val()) === '') { | ||
898 | + $btnSure.addClass('disable'); | ||
899 | + } else { | ||
900 | + $btnSure.removeClass('disable'); | ||
901 | + } | ||
902 | +}); | ||
903 | + | ||
904 | +$btnSure.on('tap', function() { | ||
905 | + var email = trim($email.val()); | ||
906 | + | ||
907 | + if ($btnSure.hasClass('disable')) { | ||
908 | + return; | ||
909 | + } | ||
910 | + | ||
911 | + if (api.emailRegx.test(email)) { | ||
912 | + $.ajax({ | ||
913 | + url: '/passport/back/sendemail', | ||
914 | + type: 'POST', | ||
915 | + data: { | ||
916 | + email: email | ||
917 | + }, | ||
918 | + success: function(data) { | ||
919 | + if (data.code === 200) { | ||
920 | + location.href = data.data; | ||
921 | + } else { | ||
922 | + showErrTip(data.message); | ||
923 | + } | ||
924 | + } | ||
925 | + }); | ||
926 | + } else { | ||
927 | + showErrTip('邮箱格式不正确,请重新输入'); | ||
928 | + } | ||
929 | +}); | ||
930 | +}); | ||
931 | +define("js/passport/back/email-success", ["zepto"], function(require, exports, module){ | ||
932 | +/** | ||
933 | + * 找回密码-邮箱找回成功 | ||
934 | + * @author: xuqi<qi.xu@yoho.cn> | ||
935 | + * @date: 2015/10/8 | ||
936 | + */ | ||
937 | + | ||
938 | +var $ = require("zepto"); | ||
939 | + | ||
940 | +var $resend = $('#resend'); | ||
941 | + | ||
942 | +var tip = require("js/plugin/tip"), | ||
943 | + showErrTip = tip.show; | ||
944 | + | ||
945 | +$resend.on('tap', function(e) { | ||
946 | + e.preventDefault(); | ||
947 | + | ||
948 | + $.ajax({ | ||
949 | + url: $resend.data('url'), | ||
950 | + type: 'GET', | ||
951 | + success: function(data) { | ||
952 | + if (data.code === 200) { | ||
953 | + showErrTip(data.message); | ||
954 | + } else { | ||
955 | + showErrTip(data.message); | ||
956 | + } | ||
957 | + } | ||
958 | + }); | ||
959 | +}); | ||
960 | +}); | ||
961 | +define("js/passport/back/new-password", ["zepto"], function(require, exports, module){ | ||
962 | +/** | ||
963 | + * 密码找回-新密码 | ||
964 | + * @author: xuqi<qi.xu@yoho.cn> | ||
965 | + * @date: 2015/10/8 | ||
966 | + */ | ||
967 | +var $ = require("zepto"); | ||
968 | + | ||
969 | +var $pwd = $('#pwd'), | ||
970 | + $btnOk = $('#btn-ok'); | ||
971 | + | ||
972 | +var api = require("js/passport/api"); | ||
973 | +var tip = require("js/plugin/tip"); | ||
974 | + | ||
975 | +var trim = $.trim; | ||
976 | +var showErrTip = tip.show; | ||
977 | + | ||
978 | +var $phoneNum = $('#phone-num'); | ||
979 | + | ||
980 | +api.bindEyesEvt(); | ||
981 | + | ||
982 | +$pwd.bind('input', function() { | ||
983 | + if (trim($pwd.val()) === '') { | ||
984 | + $btnOk.addClass('disable'); | ||
985 | + } else { | ||
986 | + $btnOk.removeClass('disable'); | ||
987 | + } | ||
988 | +}); | ||
989 | + | ||
990 | +$btnOk.on('touchstart', function() { | ||
991 | + var pwd = trim($pwd.val()), | ||
992 | + mobileBack = true, | ||
993 | + setting, | ||
994 | + url; | ||
995 | + | ||
996 | + if ($btnOk.hasClass('disable')) { | ||
997 | + return; | ||
998 | + } | ||
999 | + | ||
1000 | + setting = { | ||
1001 | + password: pwd | ||
1002 | + }; | ||
1003 | + | ||
1004 | + if ($phoneNum.length === 0) { | ||
1005 | + mobileBack = false; | ||
1006 | + } | ||
1007 | + | ||
1008 | + if (mobileBack) { | ||
1009 | + $.extend(setting, { | ||
1010 | + phoneNum: $phoneNum.val(), | ||
1011 | + areaCode: $('#areaCode').val(), | ||
1012 | + token: $('#token').val() | ||
1013 | + }); | ||
1014 | + | ||
1015 | + url = '/passport/back/passwordByMobile'; | ||
1016 | + } else { | ||
1017 | + $.extend(setting, { | ||
1018 | + code: $('#email-code').val() | ||
1019 | + }); | ||
1020 | + | ||
1021 | + url = '/passport/back/passwordByEmail'; | ||
1022 | + } | ||
1023 | + | ||
1024 | + | ||
1025 | + if (api.pwdValidate(pwd)) { | ||
1026 | + $.ajax({ | ||
1027 | + type: 'POST', | ||
1028 | + url: url, | ||
1029 | + data: setting, | ||
1030 | + success: function(data) { | ||
1031 | + if (data.code === 200) { | ||
1032 | + showErrTip('密码修改成功'); | ||
1033 | + | ||
1034 | + //1000ms后跳转页面 | ||
1035 | + setTimeout(function() { | ||
1036 | + location.href = data.data; | ||
1037 | + }, 1000); | ||
1038 | + } else { | ||
1039 | + showErrTip(data.message); | ||
1040 | + } | ||
1041 | + } | ||
1042 | + }); | ||
1043 | + } else { | ||
1044 | + showErrTip('密码6-20位,请重新输入'); | ||
1045 | + } | ||
1046 | +}); | ||
1047 | +}); | ||
1048 | +define("js/guang/index", ["zepto","lazyload","swiper","mlellipsis","iscroll-probe","index"], function(require, exports, module){ | ||
1049 | +/** | ||
1050 | + * 逛打包入口 | ||
1051 | + * @author: xuqi<qi.xu@yoho.cn> | ||
1052 | + * @date: 2015/10/9 | ||
1053 | + */ | ||
1054 | + | ||
1055 | +require("js/guang/plus-star/list"); | ||
1056 | +require("js/guang/plus-star/detail"); | ||
1057 | + | ||
1058 | +require("js/guang/home"); | ||
1059 | +require("js/guang/list"); | ||
1060 | +require("js/guang/detail"); | ||
1061 | +}); | ||
1062 | +define("js/guang/plus-star/list", ["zepto","lazyload","swiper","index"], function(require, exports, module){ | ||
1063 | +/** | ||
1064 | + * PLUS+STAR列表页 | ||
1065 | + * @author: xuqi<qi.xu@yoho.cn> | ||
1066 | + * @date: 2015/10/10 | ||
1067 | + */ | ||
1068 | + | ||
1069 | +var $ = require("zepto"), | ||
1070 | + lazyLoad = require("lazyload"), | ||
1071 | + Swiper = require("swiper"); | ||
1072 | + | ||
1073 | +var $navs = $('#nav-tab > li'), | ||
1074 | + $contents = $('#ps-content > .content'); | ||
1075 | + | ||
1076 | +var mySwiper; | ||
1077 | + | ||
1078 | +lazyLoad($('img.lazy')); | ||
1079 | + | ||
1080 | +mySwiper = new Swiper('.swiper-container', { | ||
1081 | + lazyLoading: true, | ||
1082 | + pagination: '.swiper-pagination' | ||
1083 | +}); | ||
1084 | + | ||
1085 | +$('#nav-tab').delegate('li', 'tap', function() { | ||
1086 | + if ($(this).hasClass('focus')) { | ||
1087 | + return; | ||
1088 | + } | ||
1089 | + | ||
1090 | + $navs.toggleClass('focus'); | ||
1091 | + $contents.toggleClass('hide'); | ||
1092 | + | ||
1093 | + $(document).trigger('scroll'); //Trigger lazyLoad | ||
1094 | +}); | ||
1095 | +}); | ||
1096 | +define("js/guang/plus-star/detail", ["zepto","mlellipsis","lazyload"], function(require, exports, module){ | ||
1097 | +/** | ||
1098 | + * PLUS+STAR详情页 | ||
1099 | + * @author: xuqi<qi.xu@yoho.cn> | ||
1100 | + * @date: 2015/10/10 | ||
1101 | + */ | ||
1102 | + | ||
1103 | +var $ = require("zepto"), | ||
1104 | + ellipsis = require("mlellipsis"), | ||
1105 | + lazyLoad = require("lazyload"); | ||
1106 | + | ||
1107 | +var $intro = $('#intro'), | ||
1108 | + $imt = $('#intro-more-txt'), | ||
1109 | + $infosContainer = $('#related-infos-container'); | ||
1110 | + | ||
1111 | +var info = require("js/guang/info"); | ||
1112 | + | ||
1113 | +var tip = require("js/plugin/tip"); | ||
1114 | + | ||
1115 | +var brandId = $('#brand-info').data('id'); | ||
1116 | + | ||
1117 | +var mIntro, aIntro; | ||
1118 | + | ||
1119 | +ellipsis.init(); | ||
1120 | + | ||
1121 | +//Init LazyLoad | ||
1122 | +lazyLoad($('img.lazy')); | ||
1123 | + | ||
1124 | +//文字介绍文字截取 | ||
1125 | +$intro[0].mlellipsis(3); | ||
1126 | + | ||
1127 | +//获取截取文字和完整文字 | ||
1128 | +setTimeout(function() { | ||
1129 | + mIntro = $intro.text(); | ||
1130 | + aIntro = $intro.attr('title'); | ||
1131 | +}); | ||
1132 | + | ||
1133 | +info.initInfosEvt($infosContainer); | ||
1134 | + | ||
1135 | +//文字介绍收起与展开 | ||
1136 | +$('#more-intro').bind('tap', function() { | ||
1137 | + var $this = $(this); | ||
1138 | + | ||
1139 | + $this.toggleClass('spread'); | ||
1140 | + | ||
1141 | + if ($this.hasClass('spread')) { | ||
1142 | + | ||
1143 | + //显示 | ||
1144 | + $intro.text(aIntro); | ||
1145 | + $imt.text('收起'); | ||
1146 | + } else { | ||
1147 | + | ||
1148 | + //隐藏 | ||
1149 | + $intro.text(mIntro); | ||
1150 | + $imt.text('more'); | ||
1151 | + } | ||
1152 | +}); | ||
1153 | + | ||
1154 | +//品牌收藏 | ||
1155 | +$('#brand-like').bind('tap', function(e) { | ||
1156 | + var opt = 'ok', | ||
1157 | + $this = $(this); | ||
1158 | + | ||
1159 | + e.preventDefault(); | ||
1160 | + | ||
1161 | + if ($this.hasClass('like')) { | ||
1162 | + opt = 'cancel'; | ||
1163 | + } | ||
1164 | + | ||
1165 | + $.ajax({ | ||
1166 | + type: 'POST', | ||
1167 | + url: '/guang/opt/favoriteBrand', | ||
1168 | + data: { | ||
1169 | + id: brandId, | ||
1170 | + opt: opt | ||
1171 | + }, | ||
1172 | + success: function(data) { | ||
1173 | + if (data.code === 200) { | ||
1174 | + $this.toggleClass('like'); | ||
1175 | + } else if (data.code === 400) { | ||
1176 | + tip.show('未登录'); | ||
1177 | + } | ||
1178 | + }, | ||
1179 | + error: function() { | ||
1180 | + tip.show('网络断开连接了~'); | ||
1181 | + } | ||
1182 | + }); | ||
1183 | +}); | ||
1184 | +}); | ||
1185 | +define("js/guang/info", ["zepto","mlellipsis","lazyload"], function(require, exports, module){ | ||
1186 | +/** | ||
1187 | + * 资讯相关API | ||
1188 | + * @author: xuqi<qi.xu@yoho.cn> | ||
1189 | + * @date: 2015/10/10 | ||
1190 | + */ | ||
1191 | + | ||
1192 | +var $ = require("zepto"), | ||
1193 | + ellipsis = require("mlellipsis"), | ||
1194 | + lazyLoad = require("lazyload"); | ||
1195 | + | ||
1196 | +var tip = require("js/plugin/tip"); | ||
1197 | + | ||
1198 | +var $loadMoreInfo = $('#load-more-info'); | ||
1199 | +var $loading = $(''), | ||
1200 | + $noMore = $(''); | ||
1201 | + | ||
1202 | +var loading = false; | ||
1203 | + | ||
1204 | +ellipsis.init(); | ||
1205 | + | ||
1206 | +if ($loadMoreInfo.length > 0) { | ||
1207 | + $loading = $loadMoreInfo.children('.loading'); | ||
1208 | + $noMore = $loadMoreInfo.children('.no-more'); | ||
1209 | +} | ||
1210 | + | ||
1211 | +/** | ||
1212 | + * 设置指定资讯项的Lazyload和文字截取 | ||
1213 | + * @params $infos 资讯项 | ||
1214 | + */ | ||
1215 | +function setLazyLoadAndMellipsis($infos) { | ||
1216 | + lazyLoad($infos.find('img.lazy')); | ||
1217 | + | ||
1218 | + $infos.each(function() { | ||
1219 | + var $this = $(this), | ||
1220 | + $title = $this.find('.info-title'), | ||
1221 | + $text = $this.find('.info-text'); | ||
1222 | + | ||
1223 | + $title[0].mlellipsis(2); | ||
1224 | + $text[0].mlellipsis(2); | ||
1225 | + }); | ||
1226 | +} | ||
1227 | + | ||
1228 | +/** | ||
1229 | + * 初始化资讯列表事件绑定 | ||
1230 | + * @params $container 逛资讯列表容器 | ||
1231 | + */ | ||
1232 | +function initInfosEvt($container) { | ||
1233 | + $container.delegate('.like-btn', 'tap', function(e) { | ||
1234 | + var $likeBtn = $(e.currentTarget), | ||
1235 | + $info = $likeBtn.closest('.guang-info'), | ||
1236 | + opt = 'ok'; | ||
1237 | + | ||
1238 | + if ($likeBtn.hasClass('like')) { | ||
1239 | + opt = 'cancel'; | ||
1240 | + } | ||
1241 | + | ||
1242 | + $.ajax({ | ||
1243 | + type: 'POST', | ||
1244 | + url: '/guang/opt/praiseArticle', | ||
1245 | + data: { | ||
1246 | + id: $info.data('id'), | ||
1247 | + opt: opt | ||
1248 | + }, | ||
1249 | + success: function(data) { | ||
1250 | + var code = data.code; | ||
1251 | + | ||
1252 | + if (code === 200) { | ||
1253 | + $likeBtn.next('.like-count').text(data.data); | ||
1254 | + | ||
1255 | + //切换点赞状态 | ||
1256 | + $likeBtn.toggleClass('like'); | ||
1257 | + } | ||
1258 | + }, | ||
1259 | + error: function() { | ||
1260 | + tip.show('网络断开连接了~'); | ||
1261 | + } | ||
1262 | + }); | ||
1263 | + }); | ||
1264 | + | ||
1265 | + setLazyLoadAndMellipsis($container.find('.guang-info')); | ||
1266 | +} | ||
1267 | + | ||
1268 | +/** | ||
1269 | + * 资讯LoadMore | ||
1270 | + */ | ||
1271 | +function loadMore($container, opt) { | ||
1272 | + if (loading) { | ||
1273 | + return; | ||
1274 | + } | ||
1275 | + | ||
1276 | + if (opt.end) { | ||
1277 | + return; | ||
1278 | + } | ||
1279 | + | ||
1280 | + loading = true; | ||
1281 | + $.ajax({ | ||
1282 | + type: 'GET', | ||
1283 | + url: ' /guang/index/page', | ||
1284 | + data: opt, | ||
1285 | + success: function(data) { | ||
1286 | + if (data === ' ') { | ||
1287 | + opt.end = true; | ||
1288 | + loading = false; | ||
1289 | + | ||
1290 | + // | ||
1291 | + $loading.addClass('hide'); | ||
1292 | + $noMore.removeClass('hide'); | ||
1293 | + | ||
1294 | + return; | ||
1295 | + } | ||
1296 | + $container.append(data); | ||
1297 | + | ||
1298 | + setLazyLoadAndMellipsis($container.find('.guang-info')); | ||
1299 | + | ||
1300 | + opt.page++; | ||
1301 | + | ||
1302 | + loading = false; | ||
1303 | + }, | ||
1304 | + error: function() { | ||
1305 | + tip.show('网络断开连接了~'); | ||
1306 | + loading = false; | ||
1307 | + } | ||
1308 | + }); | ||
1309 | +} | ||
1310 | + | ||
1311 | +exports.initInfosEvt = initInfosEvt; | ||
1312 | +exports.setLazyLoadAndMellipsis = setLazyLoadAndMellipsis; | ||
1313 | +exports.loadMore = loadMore; | ||
1314 | +}); | ||
1315 | +define("js/guang/home", ["zepto","swiper","mlellipsis","lazyload","index"], function(require, exports, module){ | ||
1316 | +/** | ||
1317 | + * 逛首页 | ||
1318 | + * @author: xuqi<qi.xu@yoho.cn> | ||
1319 | + * @date: 2015/10/10 | ||
1320 | + */ | ||
1321 | + | ||
1322 | +var $ = require("zepto"), | ||
1323 | + Swiper = require("swiper"); | ||
1324 | + | ||
1325 | +var info = require("js/guang/info"), | ||
1326 | + setLazyLoadAndMellipsis = info.setLazyLoadAndMellipsis, | ||
1327 | + loadMore = info.loadMore; | ||
1328 | + | ||
1329 | +var $loadMoreInfo = $('#load-more-info'); | ||
1330 | +var $loading = $(''), | ||
1331 | + $noMore = $(''); | ||
1332 | + | ||
1333 | +var winH = $(window).height(), | ||
1334 | + loadMoreH = $loadMoreInfo.height(); | ||
1335 | + | ||
1336 | +var $infoList = $('#info-list'), | ||
1337 | + $infos = $infoList.children('.info-list'), | ||
1338 | + $nav = $('#guang-nav'), | ||
1339 | + $curNav = $nav.children('.focus'), | ||
1340 | + curType = $curNav.data('type'); | ||
1341 | + | ||
1342 | +var state = {}; | ||
1343 | + | ||
1344 | +var mySwiper; | ||
1345 | + | ||
1346 | +if ($loadMoreInfo.length > 0) { | ||
1347 | + $loading = $loadMoreInfo.children('.loading'); | ||
1348 | + $noMore = $loadMoreInfo.children('.no-more'); | ||
1349 | +} | ||
1350 | + | ||
1351 | +mySwiper = new Swiper('.swiper-container', { | ||
1352 | + lazyLoading: true, | ||
1353 | + pagination: '.swiper-pagination' | ||
1354 | +}); | ||
1355 | + | ||
1356 | +info.initInfosEvt($infoList); | ||
1357 | + | ||
1358 | +//初始化各Nav下资讯加载的状态 | ||
1359 | +(function() { | ||
1360 | + var gender = $('#gender').val(); | ||
1361 | + | ||
1362 | + $nav.children('.guang-nav-item').each(function() { | ||
1363 | + var type = $(this).data('type'); | ||
1364 | + | ||
1365 | + state[type] = { | ||
1366 | + page: 1, | ||
1367 | + gender: gender, | ||
1368 | + type: type, | ||
1369 | + end: false | ||
1370 | + }; | ||
1371 | + }); | ||
1372 | +}()); | ||
1373 | + | ||
1374 | +$nav.delegate('.guang-nav-item', 'tap', function() { | ||
1375 | + var $this = $(this), | ||
1376 | + $content, | ||
1377 | + index; | ||
1378 | + | ||
1379 | + if ($this.hasClass('focus')) { | ||
1380 | + return; | ||
1381 | + } | ||
1382 | + | ||
1383 | + index = $this.index(); | ||
1384 | + | ||
1385 | + $this.addClass('focus'); | ||
1386 | + $curNav.removeClass('focus'); | ||
1387 | + | ||
1388 | + $infos.not('.hide').addClass('hide'); | ||
1389 | + | ||
1390 | + $content = $infos.eq(index); | ||
1391 | + $content.removeClass('hide'); | ||
1392 | + | ||
1393 | + //lazyload & mellipsis | ||
1394 | + setLazyLoadAndMellipsis($content.children('.guang-info')); | ||
1395 | + | ||
1396 | + $curNav = $this; | ||
1397 | + curType = $this.data('type'); | ||
1398 | + | ||
1399 | + //重置当前Tab的load-more | ||
1400 | + if (state[curType].end) { | ||
1401 | + $loading.addClass('hide'); | ||
1402 | + $noMore.removeClass('hide'); | ||
1403 | + } else { | ||
1404 | + $loading.removeClass('hide'); | ||
1405 | + $noMore.addClass('hide'); | ||
1406 | + } | ||
1407 | +}); | ||
1408 | + | ||
1409 | +$(document).scroll(function() { | ||
1410 | + if ($(window).scrollTop() + winH >= $(document).height() - loadMoreH) { | ||
1411 | + loadMore($infos, state[curType]); | ||
1412 | + } | ||
1413 | +}); | ||
1414 | +}); | ||
1415 | +define("js/guang/list", ["zepto","mlellipsis","lazyload"], function(require, exports, module){ | ||
1416 | +/** | ||
1417 | + * 列表页,编辑页 | ||
1418 | + * @author: xuqi<qi.xu@yoho.cn> | ||
1419 | + * @date: 2015/10/10 | ||
1420 | + */ | ||
1421 | + | ||
1422 | +var $ = require("zepto"); | ||
1423 | + | ||
1424 | +var info = require("js/guang/info"), | ||
1425 | + loadMore = info.loadMore; | ||
1426 | + | ||
1427 | +var winH = $(window).height(), | ||
1428 | + loadMoreH = $('#load-more').height(); | ||
1429 | + | ||
1430 | +var $author = $('#author-infos'); | ||
1431 | +var $tag = $('#tag'); | ||
1432 | + | ||
1433 | +var setting = { | ||
1434 | + page: 1, | ||
1435 | + end: false | ||
1436 | +}; | ||
1437 | + | ||
1438 | +var $infos = $('#info-list'); | ||
1439 | + | ||
1440 | +info.initInfosEvt($infos); | ||
1441 | + | ||
1442 | +if ($author.length > 0) { | ||
1443 | + $.extend(setting, { | ||
1444 | + authorId: $author.data('id') | ||
1445 | + }); | ||
1446 | +} | ||
1447 | + | ||
1448 | +if ($tag.length > 0) { | ||
1449 | + $.extend(setting, { | ||
1450 | + tag: $tag.val() | ||
1451 | + }); | ||
1452 | +} | ||
1453 | + | ||
1454 | +$(document).scroll(function() { | ||
1455 | + if ($(window).scrollTop() + winH >= $(document).height() - loadMoreH) { | ||
1456 | + loadMore($infos, setting); | ||
1457 | + } | ||
1458 | +}); | ||
1459 | +}); | ||
1460 | +define("js/guang/detail", ["zepto","mlellipsis","lazyload","iscroll-probe"], function(require, exports, module){ | ||
1461 | +/** | ||
1462 | + * 逛详情页 | ||
1463 | + * @author: xuqi<qi.xu@yoho.cn> | ||
1464 | + * @date: 2015/10/13 | ||
1465 | + */ | ||
1466 | + | ||
1467 | +var $ = require("zepto"), | ||
1468 | + ellipsis = require("mlellipsis"), | ||
1469 | + lazyLoad = require("lazyload"), | ||
1470 | + IScroll = require("iscroll-probe"); | ||
1471 | + | ||
1472 | +var $authorIntro = $('.author .intro'); | ||
1473 | + | ||
1474 | +var isIphone = navigator.userAgent.indexOf('iPhone') > 0 ? true : false; | ||
1475 | + | ||
1476 | +var hasCollocationBlock = $('.collocation-block').length > 0 ? true : false; | ||
1477 | + | ||
1478 | +//collocation block variable | ||
1479 | +var thumbWidth = 0, | ||
1480 | + $fixedThumbContainer = $(''), | ||
1481 | + $coBlock, $thumbContainer, $thumbs, $prods, | ||
1482 | + scrollToEl; | ||
1483 | + | ||
1484 | +var scrollToEl = document.querySelector('#wrapper .collocation-block'); | ||
1485 | + | ||
1486 | +var winW = $(window).width(); | ||
1487 | + | ||
1488 | +var myScroll; | ||
1489 | + | ||
1490 | +/** | ||
1491 | + * 计算搭配的箭头的位置 | ||
1492 | + * @param $curPos 当前focus的搭配项 | ||
1493 | + */ | ||
1494 | +function posCollocationArrow($curCo) { | ||
1495 | + var left = $curCo.offset().left, | ||
1496 | + bgPos = -winW + left + (thumbWidth / 2) + 'px'; | ||
1497 | + | ||
1498 | + $thumbContainer.css({ | ||
1499 | + backgroundPosition: bgPos + ' bottom' | ||
1500 | + }); | ||
1501 | + | ||
1502 | + if (isIphone) { | ||
1503 | + $fixedThumbContainer.css({ | ||
1504 | + backgroundPosition: bgPos + ' bottom' | ||
1505 | + }); | ||
1506 | + } | ||
1507 | +} | ||
1508 | + | ||
1509 | +//搭配thumb的touch事件句柄 | ||
1510 | +function thumbTouchEvt(e) { | ||
1511 | + var $curCo = $(e.currentTarget), | ||
1512 | + index = $curCo.index(), | ||
1513 | + $brother, $brotherCo, | ||
1514 | + $curProds; | ||
1515 | + | ||
1516 | + if ($curCo.hasClass('focus')) { | ||
1517 | + return; | ||
1518 | + } | ||
1519 | + | ||
1520 | + $thumbs.filter('.focus').removeClass('focus'); | ||
1521 | + | ||
1522 | + if (isIphone) { | ||
1523 | + if ($curCo.closest('.fixed-thumb-container').length > 0) { | ||
1524 | + $brother = $thumbContainer; | ||
1525 | + } else { | ||
1526 | + $brother = $fixedThumbContainer; | ||
1527 | + } | ||
1528 | + | ||
1529 | + $brotherCo = $brother.find('.thumb').eq(index); | ||
1530 | + $fixedThumbContainer.find('.thumb.focus').removeClass('focus'); | ||
1531 | + $brotherCo.addClass('focus'); | ||
1532 | + } | ||
1533 | + | ||
1534 | + $curCo.addClass('focus'); | ||
1535 | + | ||
1536 | + //定位arrow | ||
1537 | + posCollocationArrow($curCo); | ||
1538 | + | ||
1539 | + $prods.not('.hide').addClass('hide'); | ||
1540 | + $curProds = $prods.eq(index); | ||
1541 | + $curProds.removeClass('hide'); | ||
1542 | + | ||
1543 | + // | ||
1544 | + lazyLoad($curProds.find('.lazy')); | ||
1545 | + | ||
1546 | + if (isIphone) { | ||
1547 | + if (myScroll) { | ||
1548 | + myScroll.scrollToElement(scrollToEl, 400); | ||
1549 | + } | ||
1550 | + } else { | ||
1551 | + $('body').animate({ | ||
1552 | + scrollTop: $coBlock.offset().top | ||
1553 | + }, 400); | ||
1554 | + } | ||
1555 | +} | ||
1556 | + | ||
1557 | +if (isIphone) { | ||
1558 | + $('#wrapper').addClass('ios'); | ||
1559 | +} | ||
1560 | + | ||
1561 | +ellipsis.init(); | ||
1562 | + | ||
1563 | +lazyLoad($('.lazy')); | ||
1564 | + | ||
1565 | +//title mlellipsis | ||
1566 | +$('.info-list .title, .one-good .reco-name').each(function() { | ||
1567 | + this.mlellipsis(2); | ||
1568 | +}); | ||
1569 | + | ||
1570 | +//offset.left约等于marginLeft的值则表示介绍被换行,则清除intro的paddingTop让其更靠近头像和作者名 | ||
1571 | +if (parseInt($authorIntro.offset().left, 10) === parseInt($authorIntro.css('margin-left'), 10)) { | ||
1572 | + $authorIntro.css('padding-top', 0); | ||
1573 | +} | ||
1574 | + | ||
1575 | +//有搭配模块,iphone使用iscroll初始化滚动并有固定的搭配栏,其他的没有 | ||
1576 | +if (hasCollocationBlock) { | ||
1577 | + $coBlock = $('.collocation-block'); | ||
1578 | + $thumbContainer = $coBlock.children('.thumb-container'); | ||
1579 | + $thumbs = $thumbContainer.find('li'); | ||
1580 | + $prods = $coBlock.find('.prod'); | ||
1581 | + | ||
1582 | + thumbWidth = $thumbs.width(); | ||
1583 | + | ||
1584 | + if (isIphone) { | ||
1585 | + $fixedThumbContainer = $('#wrapper') | ||
1586 | + .after($thumbContainer.clone().addClass('fixed-thumb-container fixed-bottom')) | ||
1587 | + .next('.thumb-container'); | ||
1588 | + | ||
1589 | + //load img of fixed thumb container | ||
1590 | + lazyLoad($fixedThumbContainer.find('.lazy'), { | ||
1591 | + event: 'sporty' | ||
1592 | + }); | ||
1593 | + } | ||
1594 | + | ||
1595 | + //Init Arrow Position | ||
1596 | + posCollocationArrow($thumbs.filter('.focus')); | ||
1597 | + | ||
1598 | + $thumbContainer.delegate('.thumb', 'touchend', thumbTouchEvt); | ||
1599 | + | ||
1600 | + if (isIphone) { | ||
1601 | + $fixedThumbContainer.delegate('.thumb', 'touchend', thumbTouchEvt); | ||
1602 | + } | ||
1603 | +} | ||
1604 | + | ||
1605 | +// 初始化iscroll | ||
1606 | +window.onload = function() { | ||
1607 | + var $scroller = $('#scroller'); | ||
1608 | + | ||
1609 | + var winH, tcH, cbH, cbTop, fixedThumbDom; | ||
1610 | + | ||
1611 | + if (!isIphone) { | ||
1612 | + return; | ||
1613 | + } | ||
1614 | + | ||
1615 | + myScroll = new IScroll('#wrapper', { | ||
1616 | + probeType: 3, | ||
1617 | + mouseWheel: true, | ||
1618 | + click: true | ||
1619 | + }); | ||
1620 | + | ||
1621 | + document.addEventListener('touchmove', function (e) { | ||
1622 | + e.preventDefault(); | ||
1623 | + }, false); | ||
1624 | + | ||
1625 | + if (!hasCollocationBlock) { | ||
1626 | + myScroll.on('scroll', function() { | ||
1627 | + $scroller.trigger('scroll'); | ||
1628 | + }); | ||
1629 | + return; | ||
1630 | + } | ||
1631 | + | ||
1632 | + winH = $(window).height(); | ||
1633 | + fixedThumbDom = $fixedThumbContainer[0]; | ||
1634 | + | ||
1635 | + tcH = $thumbContainer.height(); | ||
1636 | + cbH = $coBlock.height(); | ||
1637 | + cbTop = $coBlock.offset().top; | ||
1638 | + | ||
1639 | + myScroll.on('scroll', function() { | ||
1640 | + var sTop = -this.y; | ||
1641 | + var classList = fixedThumbDom.className; | ||
1642 | + | ||
1643 | + if (sTop <= cbTop - winH + tcH) { | ||
1644 | + if (classList.indexOf('fixed-bottom') === -1) { | ||
1645 | + $fixedThumbContainer | ||
1646 | + .addClass('fixed-bottom') | ||
1647 | + .removeClass('hide'); | ||
1648 | + } | ||
1649 | + } else if (sTop <= cbTop) { | ||
1650 | + if (classList.indexOf('hide') === -1) { | ||
1651 | + $fixedThumbContainer | ||
1652 | + .addClass('hide') | ||
1653 | + .removeClass('fixed-bottom fixed-top'); | ||
1654 | + } | ||
1655 | + } else if (sTop <= cbTop + cbH - tcH) { | ||
1656 | + if (classList.indexOf('fixed-top') === -1) { | ||
1657 | + $fixedThumbContainer | ||
1658 | + .addClass('fixed-top') | ||
1659 | + .removeClass('hide absolute') | ||
1660 | + .css('top', ''); | ||
1661 | + } | ||
1662 | + } else if (sTop <= cbTop + cbH) { | ||
1663 | + if (classList.indexOf('absolute') === -1) { | ||
1664 | + $fixedThumbContainer | ||
1665 | + .addClass('absolute') | ||
1666 | + .removeClass('fixed-top hide'); | ||
1667 | + } | ||
1668 | + fixedThumbDom.style.top = cbTop + cbH - tcH - sTop + 'px'; | ||
1669 | + } else if (sTop > cbTop + cbH) { | ||
1670 | + if (classList.indexOf('hide') === -1) { | ||
1671 | + $fixedThumbContainer | ||
1672 | + .addClass('hide') | ||
1673 | + .removeClass('absolute'); | ||
1674 | + } | ||
1675 | + } | ||
1676 | + $scroller.trigger('scroll'); | ||
1677 | + }); | ||
1678 | +}; | ||
1679 | +}); | ||
1680 | +define("js/home/index", ["zepto","swiper","lazyload","index"], function(require, exports, module){ | ||
1681 | +/** | ||
1682 | + * 首页打包入口 | ||
1683 | + * @author: liangzhifeng<zhifeng.liang@yoho.cn> | ||
1684 | + * @date: 2015/10/12 | ||
1685 | + */ | ||
1686 | + | ||
1687 | +require("js/home/home"); | ||
1688 | +require("js/home/maybe-like"); | ||
1689 | +}); | ||
1690 | +define("js/home/home", ["zepto","swiper","lazyload","index"], function(require, exports, module){ | ||
1691 | +/** | ||
1692 | + * 首页 | ||
1693 | + * @author: liangzhifeng<zhifeng.liang@yoho.cn> | ||
1694 | + * @date: 2015/10/12 | ||
1695 | + */ | ||
1696 | +var $ = require("zepto"), | ||
1697 | + Swiper = require("swiper"), | ||
1698 | + lazyLoad = require("lazyload"), | ||
1699 | + bannerSwiper, | ||
1700 | + recommendSwiper, | ||
1701 | + hotBrandsSwiper, | ||
1702 | + trendTopicSwiper, | ||
1703 | + goodsSwiper; | ||
1704 | + | ||
1705 | +var requestFrame, | ||
1706 | + thisFunc, | ||
1707 | + start = 0, | ||
1708 | + i, | ||
1709 | + swiperClass, | ||
1710 | + supportCss3, | ||
1711 | + $logotrans = $('.home-header .logo'), | ||
1712 | + isen = true; | ||
1713 | + | ||
1714 | +require("js/home/maybe-like"); | ||
1715 | + | ||
1716 | +lazyLoad($('img.lazy')); | ||
1717 | + | ||
1718 | +//$('img:in-viewport').trigger('appear'); | ||
1719 | + | ||
1720 | +//点击首页汉堡menu图标,滑出侧栏导航 | ||
1721 | +$('.nav-btn').on('click', function (event) { | ||
1722 | + if (!$(this).hasClass('menu-open')) { | ||
1723 | + $('.mobile-wrap').addClass('menu-open'); | ||
1724 | + $('.overlay').addClass('show'); | ||
1725 | + $('.side-nav').addClass('on'); | ||
1726 | + | ||
1727 | + //设置boy高宽,页面不能上下滑动 | ||
1728 | + $('body').css({ | ||
1729 | + height: $(window).height(), | ||
1730 | + width: '100%', | ||
1731 | + overflow: 'hidden' | ||
1732 | + }); | ||
1733 | + } | ||
1734 | + event.stopPropagation(); | ||
1735 | +}); | ||
1736 | + | ||
1737 | +//点击页面主体,收起侧栏导航及二级导航 | ||
1738 | +$('.mobile-wrap').on('click', function () { | ||
1739 | + if ($(this).hasClass('menu-open')) { | ||
1740 | + $('.mobile-wrap').removeClass('menu-open'); | ||
1741 | + $('.overlay').removeClass('show'); | ||
1742 | + $('.sub-nav').removeClass('show'); | ||
1743 | + $('.side-nav').removeClass('on'); | ||
1744 | + $('body').css({ | ||
1745 | + height: 'auto', | ||
1746 | + overflow: 'auto' | ||
1747 | + }); | ||
1748 | + } | ||
1749 | +}); | ||
1750 | + | ||
1751 | +//点击一级导航,弹出二级导航 | ||
1752 | +$('.side-nav').on('click', 'li', function () { | ||
1753 | + if ($(this).find('.sub-nav').size() > 0) { | ||
1754 | + $('.sub-nav').removeClass('show'); | ||
1755 | + $(this).find('.sub-nav').addClass('show'); | ||
1756 | + } | ||
1757 | +}); | ||
1758 | + | ||
1759 | +//返回一级导航,收起二级导航 | ||
1760 | +$('.sub-nav').each(function () { | ||
1761 | + $(this).find('li').eq(0).on('click', function (e) { | ||
1762 | + $('.sub-nav').removeClass('show'); | ||
1763 | + e.stopPropagation(); | ||
1764 | + }); | ||
1765 | +}); | ||
1766 | + | ||
1767 | +//二级导航样式控制 | ||
1768 | +$('.sub-nav').on('mouseenter', 'li', function () { | ||
1769 | + if ($(this).index() !== 0) { | ||
1770 | + $(this).addClass('current').siblings().removeClass('current'); | ||
1771 | + } | ||
1772 | +}); | ||
1773 | + | ||
1774 | +//头部banner轮播 | ||
1775 | +if ($('.banner-swiper').find('li').size() > 1) { | ||
1776 | + bannerSwiper = new Swiper('.banner-swiper', { | ||
1777 | + loop: true, | ||
1778 | + autoplay: 3000, | ||
1779 | + autoplayDisableOnInteraction: false, | ||
1780 | + paginationClickable: true, | ||
1781 | + slideElement: 'li', | ||
1782 | + pagination: '.banner-top .pagination-inner' | ||
1783 | + }); | ||
1784 | +} | ||
1785 | + | ||
1786 | +//热门品牌滑动 | ||
1787 | +hotBrandsSwiper = new Swiper('.brands-swiper', { | ||
1788 | + grabCursor: true, | ||
1789 | + slidesPerView: 'auto', | ||
1790 | + wrapperClass: 'brands-list', | ||
1791 | + slideElement: 'li' | ||
1792 | +}); | ||
1793 | + | ||
1794 | +//推荐搭配滑动 | ||
1795 | +recommendSwiper = new Swiper('.recommend-swiper', { | ||
1796 | + grabCursor: true, | ||
1797 | + slidesPerView: 'auto', | ||
1798 | + wrapperClass: 'recommend-list', | ||
1799 | + slideElement: 'li' | ||
1800 | +}); | ||
1801 | + | ||
1802 | +//潮品话题轮播 | ||
1803 | +if ($('.trend-topic-swiper').find('li').size() > 1) { | ||
1804 | + trendTopicSwiper = new Swiper('.trend-topic-swiper', { | ||
1805 | + loop: true, | ||
1806 | + autoplay: 3000, | ||
1807 | + autoplayDisableOnInteraction: false, | ||
1808 | + paginationClickable: true, | ||
1809 | + slideElement: 'li', | ||
1810 | + pagination: '.trend-topic-content .pagination-inner' | ||
1811 | + }); | ||
1812 | +} | ||
1813 | + | ||
1814 | +//潮流上装/经典裤装等轮播 | ||
1815 | +$('.category-swiper').each(function (i, index) { | ||
1816 | + swiperClass = 'category-swiper' + i; | ||
1817 | + $(this).addClass(swiperClass); | ||
1818 | + if ($('.' + swiperClass).find('.swiper-slide').size() > 1) { | ||
1819 | + goodsSwiper = new Swiper('.' + swiperClass, { | ||
1820 | + loop: true, | ||
1821 | + autoplay: 3000, | ||
1822 | + autoplayDisableOnInteraction: false, | ||
1823 | + paginationClickable: true, | ||
1824 | + slideElement: 'li', | ||
1825 | + pagination: '.' + swiperClass + ' .pagination-inner' | ||
1826 | + }); | ||
1827 | + } | ||
1828 | +}); | ||
1829 | + | ||
1830 | + | ||
1831 | +//回到顶部 | ||
1832 | +// $('.back-to-top').bind('touchstart', function (e) { | ||
1833 | +// e.preventDefault(); | ||
1834 | +// $(window).scrollTop(0); | ||
1835 | +// }); | ||
1836 | + | ||
1837 | +//关闭头部下载浮层 | ||
1838 | +$('.header-download').on('click', '.close-btn', function () { | ||
1839 | + $(this).parent().remove(); | ||
1840 | +}); | ||
1841 | + | ||
1842 | + | ||
1843 | +//logo动画 | ||
1844 | +requestFrame = (function () { | ||
1845 | + var tempFunc = null, | ||
1846 | + prefixList = ['webkit', 'moz', 'ms']; | ||
1847 | + | ||
1848 | + for (i = 0; i < prefixList.length; i++) { | ||
1849 | + thisFunc = prefixList[i] + 'RequestAnimationFrame'; | ||
1850 | + if (window[thisFunc]) { | ||
1851 | + supportCss3 = true; | ||
1852 | + tempFunc = thisFunc; | ||
1853 | + } | ||
1854 | + } | ||
1855 | + | ||
1856 | + if (supportCss3) { | ||
1857 | + return function (callback) { | ||
1858 | + window[tempFunc](callback); | ||
1859 | + }; | ||
1860 | + } | ||
1861 | + return function (callback) { | ||
1862 | + window.setTimeout(callback, 67); | ||
1863 | + }; | ||
1864 | +})(); | ||
1865 | + | ||
1866 | +function tsAnimate() { | ||
1867 | + start = start + 10; | ||
1868 | + $logotrans.css({ | ||
1869 | + transform: 'rotateX(' + start + 'deg)', | ||
1870 | + '-webkit-transform': 'rotateX(' + start + 'deg)', | ||
1871 | + '-moz-transform': 'rotateX(' + start + 'deg)' | ||
1872 | + }); | ||
1873 | + if (start / 90 % 2 === 1) { | ||
1874 | + if (isen) { | ||
1875 | + $logotrans.addClass('animate'); | ||
1876 | + isen = false; | ||
1877 | + } else { | ||
1878 | + $logotrans.removeClass('animate'); | ||
1879 | + isen = true; | ||
1880 | + } | ||
1881 | + } | ||
1882 | + if (start / 90 % 2 === 0 && start % 360 !== 0) { | ||
1883 | + window.setTimeout(tsAnimate, 3000); | ||
1884 | + } else { | ||
1885 | + if (start % 360 === 0) { | ||
1886 | + window.setTimeout(tsAnimate, 3 * 60 * 1000); | ||
1887 | + } else { | ||
1888 | + requestFrame(function () { | ||
1889 | + tsAnimate(); | ||
1890 | + }); | ||
1891 | + } | ||
1892 | + } | ||
1893 | +} | ||
1894 | + | ||
1895 | +tsAnimate(); | ||
1896 | + | ||
1897 | + | ||
1898 | +}); | ||
1899 | +define("js/home/maybe-like", ["zepto","lazyload"], function(require, exports, module){ | ||
1900 | +/** | ||
1901 | + * “你可能喜欢”模块JS | ||
1902 | + * @author: liangzhifeng<zhifeng.liang@yoho.cn> | ||
1903 | + * @date: 2015/10/12 | ||
1904 | + */ | ||
1905 | + | ||
1906 | +var $ = require("zepto"), | ||
1907 | + tip = require("js/plugin/tip"), | ||
1908 | + lazyLoad = require("lazyload"); | ||
1909 | + | ||
1910 | +var winH = $(window).height(), | ||
1911 | + loadMoreH = $('#load-more').height(), | ||
1912 | + $goodList = $('#goods-list'), | ||
1913 | + loading = false, | ||
1914 | + page = 0, | ||
1915 | + gender = $('.mobile-wrap').hasClass('boys-wrap') ? '1,3' : '2,3', | ||
1916 | + kidsType = $('.mobile-wrap').hasClass('kids-wrap') ? true : false, | ||
1917 | + lifestyleType = $('.mobile-wrap').hasClass('lifestyle-wrap') ? true : false, | ||
1918 | + num, | ||
1919 | + url; | ||
1920 | + | ||
1921 | +var $curNav, | ||
1922 | + index, | ||
1923 | + $navList = $('#maybe-like-nav'); | ||
1924 | + | ||
1925 | +//ajax url | ||
1926 | +if (kidsType) { | ||
1927 | + url = '/product/recom/maylikekids'; | ||
1928 | +} else if (lifestyleType) { | ||
1929 | + url = '/product/recom/maylikelife'; | ||
1930 | +} else { | ||
1931 | + url = '/product/recom/maylike?gender=' + gender; | ||
1932 | +} | ||
1933 | + | ||
1934 | +$curNav = $navList.children('.focus'); | ||
1935 | + | ||
1936 | +$('#maybe-like-nav').delegate('li', 'touchstart', function() { | ||
1937 | + var $this = $(this), | ||
1938 | + $goods = $('.goods-list'), | ||
1939 | + $content; | ||
1940 | + | ||
1941 | + | ||
1942 | + if ($this.hasClass('focus')) { | ||
1943 | + return; | ||
1944 | + } | ||
1945 | + | ||
1946 | + index = $this.index(); | ||
1947 | + | ||
1948 | + $this.addClass('focus'); | ||
1949 | + $curNav.removeClass('focus'); | ||
1950 | + | ||
1951 | + $goods.not('.hide').addClass('hide'); | ||
1952 | + $content = $goods.eq(index); | ||
1953 | + $content.removeClass('hide'); | ||
1954 | + | ||
1955 | + $curNav = $this; | ||
1956 | + | ||
1957 | + $(document).trigger('scroll'); //Trigger lazyLoad | ||
1958 | +}); | ||
1959 | + | ||
1960 | +//srcoll to load more | ||
1961 | +$(window).scroll(function () { | ||
1962 | + if ($(window).scrollTop() + winH >= $(document).height() - loadMoreH) { | ||
1963 | + if (loading) { | ||
1964 | + return; | ||
1965 | + } | ||
1966 | + loading = true; | ||
1967 | + num = $goodList.children('.good-info').length; | ||
1968 | + $.ajax({ | ||
1969 | + type: 'GET', | ||
1970 | + url: url, | ||
1971 | + data: { | ||
1972 | + page: page + 1 | ||
1973 | + }, | ||
1974 | + success: function(data) { | ||
1975 | + if (data === ' ') { | ||
1976 | + loading = true; | ||
1977 | + return; | ||
1978 | + } | ||
1979 | + $goodList.append(data); | ||
1980 | + | ||
1981 | + //lazyLoad | ||
1982 | + //lazyLoad($goodList.children('.good-info:gt(' + (num - 1) + ')').find('img.lazy')); | ||
1983 | + lazyLoad($('.good-info').find('img.lazy')); | ||
1984 | + | ||
1985 | + loading = false; | ||
1986 | + page++; | ||
1987 | + }, | ||
1988 | + error: function() { | ||
1989 | + tip.show('网络断开连接了~'); | ||
1990 | + loading = false; | ||
1991 | + } | ||
1992 | + }); | ||
1993 | + } | ||
1994 | + | ||
1995 | +}); | ||
1996 | +}); | ||
1997 | +define("js/product/index", ["zepto","swiper","lazyload","index"], function(require, exports, module){ | ||
1998 | +/** | ||
1999 | + * 产品打包入口 | ||
2000 | + * @author: liangzhifeng<zhifeng.liang@yoho.cn> | ||
2001 | + * @date: 2015/10/12 | ||
2002 | + */ | ||
2003 | + | ||
2004 | +require("js/product/newsale/newarrival"); | ||
2005 | +require("js/product/newsale/discount"); | ||
2006 | +require("js/product/list"); | ||
2007 | +require("js/product/detail/detail"); | ||
2008 | +}); | ||
2009 | +define("js/product/newsale/newarrival", ["zepto","swiper","lazyload","index"], function(require, exports, module){ | ||
2010 | +/** | ||
2011 | + * 新品到着 | ||
2012 | + * @author: liangzhifeng<zhifeng.liang@yoho.cn> | ||
2013 | + * @date: 2015/10/24 | ||
2014 | + */ | ||
2015 | + | ||
2016 | +var $ = require("zepto"), | ||
2017 | + Swiper = require("swiper"), | ||
2018 | + lazyLoad = require("lazyload"); | ||
2019 | + | ||
2020 | +var swiper; | ||
2021 | + | ||
2022 | +var filter = require("js/plugin/filter"); | ||
2023 | + | ||
2024 | +var $goodsContainer = $('#goods-container'), | ||
2025 | + $ngc = $($goodsContainer.children().get(0)), | ||
2026 | + $pgc = $($goodsContainer.children().get(1)), | ||
2027 | + $dgc = $($goodsContainer.children().get(2)); | ||
2028 | + | ||
2029 | +var winH = $(window).height(); | ||
2030 | + | ||
2031 | +//默认筛选条件 | ||
2032 | +var defaultOpt = { | ||
2033 | + gender: $('#gender').val(), | ||
2034 | + brand: $('#brand').val(), | ||
2035 | + msort: $('#msort').val(), | ||
2036 | + color: $('#color').val(), | ||
2037 | + size: $('#size').val(), | ||
2038 | + price: $('#price').val(), | ||
2039 | + discount: $('#discount').val(), | ||
2040 | + limit: $('#limit').val(), | ||
2041 | + channel: $('#channel').val(), | ||
2042 | + p_d: $('#p_d').val() | ||
2043 | +}; | ||
2044 | + | ||
2045 | +var $listNav = $('#list-nav'), | ||
2046 | + | ||
2047 | + //导航数据信息 | ||
2048 | + navInfo = { | ||
2049 | + today: { | ||
2050 | + reload: true, | ||
2051 | + page: 0, | ||
2052 | + end: false | ||
2053 | + }, | ||
2054 | + week: { | ||
2055 | + reload: true, | ||
2056 | + page: 0, | ||
2057 | + end: false | ||
2058 | + }, | ||
2059 | + sale: { | ||
2060 | + reload: true, | ||
2061 | + page: 0, | ||
2062 | + end: false | ||
2063 | + } | ||
2064 | + }, | ||
2065 | + $pre, //纪录进入筛选前的active项 | ||
2066 | + searching; | ||
2067 | + | ||
2068 | +$pgc.addClass('hide'); | ||
2069 | +$dgc.addClass('hide'); | ||
2070 | + | ||
2071 | +if ($('.swiper-container .swiper-slide').length > 1) { | ||
2072 | + swiper = new Swiper('.swiper-container', { | ||
2073 | + lazyLoading: true, | ||
2074 | + pagination: '.swiper-pagination' | ||
2075 | + }); | ||
2076 | +} | ||
2077 | + | ||
2078 | +/** | ||
2079 | + * 筛选注册的回调,筛选子项点击后逻辑 | ||
2080 | + * 需要执行search的场景:1.点选筛选项;2.relaod为true时切换导航;3.下拉加载 | ||
2081 | + * @param opt {type, id} | ||
2082 | + */ | ||
2083 | +function search(opt) { | ||
2084 | + var setting = {}, | ||
2085 | + ext, | ||
2086 | + att, | ||
2087 | + nav, navType, | ||
2088 | + dayLimit, | ||
2089 | + page; | ||
2090 | + | ||
2091 | + if (opt) { | ||
2092 | + | ||
2093 | + //筛选项变更则重置reload为true | ||
2094 | + for (att in navInfo) { | ||
2095 | + if (navInfo.hasOwnProperty(att)) { | ||
2096 | + navInfo[att].reload = true; | ||
2097 | + } | ||
2098 | + } | ||
2099 | + | ||
2100 | + //处理active状态 | ||
2101 | + $listNav.children('.active').removeClass('active'); | ||
2102 | + $pre.addClass('active'); | ||
2103 | + | ||
2104 | + switch (opt.type) { | ||
2105 | + case 'gender': | ||
2106 | + ext = { | ||
2107 | + gender: opt.id | ||
2108 | + }; | ||
2109 | + break; | ||
2110 | + case 'brand': | ||
2111 | + ext = { | ||
2112 | + brand: opt.id | ||
2113 | + }; | ||
2114 | + break; | ||
2115 | + case 'msort': | ||
2116 | + ext = { | ||
2117 | + msort: opt.id | ||
2118 | + }; | ||
2119 | + break; | ||
2120 | + case 'color': | ||
2121 | + ext = { | ||
2122 | + color: opt.id | ||
2123 | + }; | ||
2124 | + break; | ||
2125 | + case 'size': | ||
2126 | + ext = { | ||
2127 | + size: opt.id | ||
2128 | + }; | ||
2129 | + break; | ||
2130 | + case 'price': | ||
2131 | + ext = { | ||
2132 | + price: opt.id | ||
2133 | + }; | ||
2134 | + break; | ||
2135 | + case 'discount': | ||
2136 | + ext = { | ||
2137 | + discount: opt.id | ||
2138 | + }; | ||
2139 | + break; | ||
2140 | + case 'limit': | ||
2141 | + ext = { | ||
2142 | + limit: opt.id | ||
2143 | + }; | ||
2144 | + break; | ||
2145 | + case 'channel': | ||
2146 | + ext = { | ||
2147 | + channel: opt.id | ||
2148 | + }; | ||
2149 | + break; | ||
2150 | + case 'p_d': | ||
2151 | + ext = { | ||
2152 | + p_d: opt.id | ||
2153 | + }; | ||
2154 | + break; | ||
2155 | + } | ||
2156 | + | ||
2157 | + $.extend(defaultOpt, ext); //扩展筛选项 | ||
2158 | + } | ||
2159 | + | ||
2160 | + if (searching) { | ||
2161 | + return; | ||
2162 | + } | ||
2163 | + | ||
2164 | + //导航类别 | ||
2165 | + if ($pre.hasClass('today')) { | ||
2166 | + navType = 'today'; | ||
2167 | + dayLimit = 1; | ||
2168 | + } else if ($pre.hasClass('week')) { | ||
2169 | + navType = 'week'; | ||
2170 | + dayLimit = 2; | ||
2171 | + } else if ($pre.hasClass('sale')) { | ||
2172 | + navType = 'sale'; | ||
2173 | + dayLimit = 3; | ||
2174 | + } | ||
2175 | + | ||
2176 | + nav = navInfo[navType]; | ||
2177 | + | ||
2178 | + page = nav.page + 1; | ||
2179 | + if (nav.reload) { | ||
2180 | + page = 1; | ||
2181 | + } else if (nav.end) { | ||
2182 | + | ||
2183 | + //不需要重新加载并且数据请求结束 | ||
2184 | + return; | ||
2185 | + } | ||
2186 | + | ||
2187 | + $.extend(setting, defaultOpt, { | ||
2188 | + dayLimit: dayLimit, | ||
2189 | + page: page | ||
2190 | + }); | ||
2191 | + | ||
2192 | + searching = true; | ||
2193 | + | ||
2194 | + $.ajax({ | ||
2195 | + type: 'GET', | ||
2196 | + url: '/product/newsale/selectNewSale', | ||
2197 | + data: setting, | ||
2198 | + success: function(data) { | ||
2199 | + var noResult = '<p class="no-result">未找到相关搜索结果</p>', | ||
2200 | + $container; | ||
2201 | + | ||
2202 | + switch (navType) { | ||
2203 | + case 'today': | ||
2204 | + $container = $ngc; | ||
2205 | + break; | ||
2206 | + case 'week': | ||
2207 | + $container = $pgc; | ||
2208 | + break; | ||
2209 | + case 'sale': | ||
2210 | + $container = $dgc; | ||
2211 | + break; | ||
2212 | + } | ||
2213 | + | ||
2214 | + if (data === ' ') { | ||
2215 | + nav.end = true; | ||
2216 | + | ||
2217 | + if (nav.reload) { | ||
2218 | + $container.html(noResult); | ||
2219 | + } | ||
2220 | + } else { | ||
2221 | + if (nav.reload) { | ||
2222 | + $container.html(data); | ||
2223 | + } else { | ||
2224 | + $container.append(data); | ||
2225 | + } | ||
2226 | + | ||
2227 | + lazyLoad($container.find('.lazy')); | ||
2228 | + } | ||
2229 | + | ||
2230 | + nav.reload = false; | ||
2231 | + nav.page = page; | ||
2232 | + | ||
2233 | + searching = false; | ||
2234 | + } | ||
2235 | + }); | ||
2236 | + | ||
2237 | +} | ||
2238 | + | ||
2239 | +lazyLoad($('.lazy')); | ||
2240 | + | ||
2241 | +filter.registerCbFn(search); | ||
2242 | + | ||
2243 | +//导航栏点击逻辑说明: | ||
2244 | +//1.点击非active项时切换active状态 | ||
2245 | +//2.价格和折扣active状态时继续点击切换排序 | ||
2246 | +//3.筛选无active时点击展开筛选面板 | ||
2247 | +//4.筛选有active时点击隐藏筛选面板并恢复点击筛选前active项的active状态 | ||
2248 | +//5.当前active为筛选并且点击其他项时,隐藏筛选面板 | ||
2249 | +$listNav.delegate('li', 'touchstart', function() { | ||
2250 | + var $this = $(this), | ||
2251 | + nav, | ||
2252 | + navType, | ||
2253 | + $active; | ||
2254 | + | ||
2255 | + if ($this.hasClass('filter')) { | ||
2256 | + | ||
2257 | + //筛选面板切换状态 | ||
2258 | + if ($this.hasClass('active')) { | ||
2259 | + filter.hideFilter(); | ||
2260 | + | ||
2261 | + //点击筛选钱的active项回复active | ||
2262 | + $pre.addClass('active'); | ||
2263 | + $this.removeClass('active'); | ||
2264 | + } else { | ||
2265 | + $pre = $this.siblings('.active'); | ||
2266 | + | ||
2267 | + $pre.removeClass('active'); | ||
2268 | + $this.addClass('active'); | ||
2269 | + | ||
2270 | + filter.showFilter(); | ||
2271 | + } | ||
2272 | + } else { | ||
2273 | + | ||
2274 | + if ($this.hasClass('today')) { | ||
2275 | + navType = 'today'; | ||
2276 | + } else if ($this.hasClass('week')) { | ||
2277 | + navType = 'week'; | ||
2278 | + } else if ($this.hasClass('sale')) { | ||
2279 | + navType = 'sale'; | ||
2280 | + } | ||
2281 | + | ||
2282 | + nav = navInfo[navType]; | ||
2283 | + | ||
2284 | + if (!($this.hasClass('active'))) { | ||
2285 | + | ||
2286 | + $active = $this.siblings('.active'); | ||
2287 | + | ||
2288 | + $pre = $this; //$pre为除筛选导航的其他导航项,若当前active的为筛选,则把$pre置为当前点击项 | ||
2289 | + | ||
2290 | + if ($active.hasClass('filter')) { | ||
2291 | + | ||
2292 | + //若之前active项为筛选,则隐藏筛选面板 | ||
2293 | + filter.hideFilter(); | ||
2294 | + } else { | ||
2295 | + | ||
2296 | + //切换container显示 | ||
2297 | + $goodsContainer.children('.container:not(.hide)').addClass('hide'); | ||
2298 | + | ||
2299 | + switch (navType) { | ||
2300 | + case 'today': | ||
2301 | + $ngc.removeClass('hide'); | ||
2302 | + break; | ||
2303 | + | ||
2304 | + case 'week': | ||
2305 | + $pgc.removeClass('hide'); | ||
2306 | + break; | ||
2307 | + | ||
2308 | + case 'sale': | ||
2309 | + $dgc.removeClass('hide'); | ||
2310 | + break; | ||
2311 | + } | ||
2312 | + } | ||
2313 | + | ||
2314 | + $active.removeClass('active'); | ||
2315 | + $this.addClass('active'); | ||
2316 | + } | ||
2317 | + | ||
2318 | + if (nav.reload) { | ||
2319 | + search(); | ||
2320 | + } | ||
2321 | + } | ||
2322 | +}); | ||
2323 | + | ||
2324 | +$(window).scroll(function() { | ||
2325 | + | ||
2326 | + //当scroll到1/4$goodsContainer高度后继续请求下一页数据 | ||
2327 | + if ($(window).scrollTop() + winH > | ||
2328 | + $(document).height() - 0.25 * $goodsContainer.height()) { | ||
2329 | + if ($pre !== undefined) { | ||
2330 | + search(); | ||
2331 | + } | ||
2332 | + } | ||
2333 | +}); | ||
2334 | +}); | ||
2335 | +define("js/plugin/filter", ["zepto"], function(require, exports, module){ | ||
2336 | +/** | ||
2337 | + * 筛选JS | ||
2338 | + * 暴露三个接口:注册回调、显示filter、隐藏filter | ||
2339 | + * @author: xuqi<qi.xu@yoho.cn> | ||
2340 | + * @date: 2015/10/19 | ||
2341 | + */ | ||
2342 | + | ||
2343 | +var $ = require("zepto"); | ||
2344 | + | ||
2345 | +var $filter = $('.filter-mask, .filter-body'); | ||
2346 | + | ||
2347 | +var $classify = $filter.find('.classify'), | ||
2348 | + $subClassify = $filter.find('.sub-classify'); | ||
2349 | + | ||
2350 | +var cbFn; | ||
2351 | + | ||
2352 | +//隐藏筛选界面 | ||
2353 | +function hideFilter() { | ||
2354 | + $filter.addClass('hide'); | ||
2355 | +} | ||
2356 | + | ||
2357 | +//显示筛选界面 | ||
2358 | +function showFilter() { | ||
2359 | + $filter.removeClass('hide'); | ||
2360 | +} | ||
2361 | + | ||
2362 | +//注册sub-classify点击后的回调 | ||
2363 | +function registerCbFn(cb) { | ||
2364 | + cbFn = cb; | ||
2365 | +} | ||
2366 | + | ||
2367 | +//设置完高度后显示sub并设置选中 | ||
2368 | +$classify.children(':first-child').addClass('active'); //T:不在HTML中使用{{#if @first}}active{{/if}}来初始化active为避免sub设置高度时的闪烁 | ||
2369 | + | ||
2370 | +//classify switch | ||
2371 | +$classify.delegate('.classify-item', 'tap', function() { | ||
2372 | + var $this = $(this); | ||
2373 | + | ||
2374 | + if ($this.hasClass('active')) { | ||
2375 | + return; | ||
2376 | + } | ||
2377 | + | ||
2378 | + $this.siblings('.active').removeClass('active'); | ||
2379 | + | ||
2380 | + $this.addClass('active'); | ||
2381 | +}); | ||
2382 | + | ||
2383 | +//点击Mask隐藏筛选界面 | ||
2384 | +$filter.filter('.filter-mask').tap(function() { | ||
2385 | + hideFilter(); | ||
2386 | +}); | ||
2387 | + | ||
2388 | +$subClassify.delegate('li', 'tap', function(e) { | ||
2389 | + var $this = $(this), | ||
2390 | + id = $this.data('id'); | ||
2391 | + | ||
2392 | + var $sub = $this.closest('.sub-classify'); | ||
2393 | + | ||
2394 | + var $shower = $sub.siblings('.shower'); | ||
2395 | + | ||
2396 | + var html, shower; | ||
2397 | + | ||
2398 | + e.stopPropagation(); | ||
2399 | + | ||
2400 | + if ($this.hasClass('chosed')) { | ||
2401 | + return; | ||
2402 | + } | ||
2403 | + | ||
2404 | + $sub.children('.chosed').removeClass('chosed'); | ||
2405 | + $this.addClass('chosed'); | ||
2406 | + | ||
2407 | + html = $.trim($this.html()); | ||
2408 | + | ||
2409 | + shower = $.trim($shower.html()); | ||
2410 | + | ||
2411 | + $shower.html( | ||
2412 | + shower.substring(0, shower.indexOf('</span>') + 7) + //拆分出shower的title | ||
2413 | + html.substring(0, html.indexOf('<i')) //拆分选中筛选值 | ||
2414 | + ); | ||
2415 | + | ||
2416 | + if ($this.index() === 0) { | ||
2417 | + $shower.addClass('default'); | ||
2418 | + } else { | ||
2419 | + $shower.removeClass('default'); | ||
2420 | + } | ||
2421 | + | ||
2422 | + if (cbFn) { | ||
2423 | + cbFn({ | ||
2424 | + type: $sub.data('type'), | ||
2425 | + id: id | ||
2426 | + }); | ||
2427 | + } | ||
2428 | + | ||
2429 | + hideFilter(); | ||
2430 | +}); | ||
2431 | + | ||
2432 | + | ||
2433 | +exports.showFilter = showFilter; | ||
2434 | + | ||
2435 | +exports.hideFilter = hideFilter; | ||
2436 | + | ||
2437 | +exports.registerCbFn = registerCbFn; | ||
2438 | +}); | ||
2439 | +define("js/product/newsale/discount", ["zepto","swiper","lazyload","index"], function(require, exports, module){ | ||
2440 | +/** | ||
2441 | + * 商品列表页 | ||
2442 | + * @author: xuqi<qi.xu@yoho.cn> | ||
2443 | + * @date: 2015/10/20 | ||
2444 | + */ | ||
2445 | + | ||
2446 | +var $ = require("zepto"), | ||
2447 | + Swiper = require("swiper"), | ||
2448 | + lazyLoad = require("lazyload"); | ||
2449 | + | ||
2450 | +var swiper; | ||
2451 | + | ||
2452 | +var filter = require("js/plugin/filter"); | ||
2453 | + | ||
2454 | +var $goodsContainer = $('#goods-container'), | ||
2455 | + $ngc = $($goodsContainer.children().get(0)), | ||
2456 | + $pgc = $($goodsContainer.children().get(1)), | ||
2457 | + $dgc = $($goodsContainer.children().get(2)); | ||
2458 | + | ||
2459 | +var winH = $(window).height(); | ||
2460 | + | ||
2461 | +//默认筛选条件 | ||
2462 | +var defaultOpt = { | ||
2463 | + gender: $('#gender').val(), | ||
2464 | + brand: $('#brand').val(), | ||
2465 | + msort: $('#msort').val(), | ||
2466 | + color: $('#color').val(), | ||
2467 | + size: $('#size').val(), | ||
2468 | + price: $('#price').val(), | ||
2469 | + discount: $('#discount').val() | ||
2470 | +}; | ||
2471 | + | ||
2472 | +var $listNav = $('#list-nav'), | ||
2473 | + | ||
2474 | + //导航数据信息 | ||
2475 | + navInfo = { | ||
2476 | + newest: { | ||
2477 | + order: 1, | ||
2478 | + reload: true, | ||
2479 | + page: 0, | ||
2480 | + end: false | ||
2481 | + }, | ||
2482 | + price: { | ||
2483 | + order: 0, | ||
2484 | + reload: true, | ||
2485 | + page: 0, | ||
2486 | + end: false | ||
2487 | + }, | ||
2488 | + discount: { | ||
2489 | + order: 0, | ||
2490 | + reload: true, | ||
2491 | + page: 0, | ||
2492 | + end: false | ||
2493 | + } | ||
2494 | + }, | ||
2495 | + $pre, //纪录进入筛选前的active项 | ||
2496 | + searching; | ||
2497 | + | ||
2498 | +if ($('.swiper-container .swiper-slide').length > 1) { | ||
2499 | + swiper = new Swiper('.swiper-container', { | ||
2500 | + lazyLoading: true, | ||
2501 | + pagination: '.swiper-pagination' | ||
2502 | + }); | ||
2503 | +} | ||
2504 | + | ||
2505 | +/** | ||
2506 | + * 筛选注册的回调,筛选子项点击后逻辑 | ||
2507 | + * 需要执行search的场景:1.点选筛选项;2.relaod为true时切换导航;3.下拉加载 | ||
2508 | + * @param opt {type, id} | ||
2509 | + */ | ||
2510 | +function search(opt) { | ||
2511 | + var setting = {}, | ||
2512 | + ext, | ||
2513 | + att, | ||
2514 | + nav, navType, | ||
2515 | + page; | ||
2516 | + | ||
2517 | + if (opt) { | ||
2518 | + | ||
2519 | + //筛选项变更则重置reload为true | ||
2520 | + for (att in navInfo) { | ||
2521 | + if (navInfo.hasOwnProperty(att)) { | ||
2522 | + navInfo[att].reload = true; | ||
2523 | + } | ||
2524 | + } | ||
2525 | + | ||
2526 | + //处理active状态 | ||
2527 | + $listNav.children('.active').removeClass('active'); | ||
2528 | + $pre.addClass('active'); | ||
2529 | + | ||
2530 | + switch (opt.type) { | ||
2531 | + case 'gender': | ||
2532 | + ext = { | ||
2533 | + gender: opt.id | ||
2534 | + }; | ||
2535 | + break; | ||
2536 | + case 'brand': | ||
2537 | + ext = { | ||
2538 | + brand: opt.id | ||
2539 | + }; | ||
2540 | + break; | ||
2541 | + case 'msort': | ||
2542 | + ext = { | ||
2543 | + msort: opt.id | ||
2544 | + }; | ||
2545 | + break; | ||
2546 | + case 'color': | ||
2547 | + ext = { | ||
2548 | + color: opt.id | ||
2549 | + }; | ||
2550 | + break; | ||
2551 | + case 'size': | ||
2552 | + ext = { | ||
2553 | + size: opt.id | ||
2554 | + }; | ||
2555 | + break; | ||
2556 | + case 'price': | ||
2557 | + ext = { | ||
2558 | + price: opt.id | ||
2559 | + }; | ||
2560 | + break; | ||
2561 | + case 'discount': | ||
2562 | + ext = { | ||
2563 | + discount: opt.id | ||
2564 | + }; | ||
2565 | + break; | ||
2566 | + } | ||
2567 | + | ||
2568 | + $.extend(defaultOpt, ext); //扩展筛选项 | ||
2569 | + } | ||
2570 | + | ||
2571 | + if (searching) { | ||
2572 | + return; | ||
2573 | + } | ||
2574 | + | ||
2575 | + //导航类别 | ||
2576 | + if ($pre.hasClass('new')) { | ||
2577 | + navType = 'newest'; | ||
2578 | + } else if ($pre.hasClass('price')) { | ||
2579 | + navType = 'price'; | ||
2580 | + } else if ($pre.hasClass('discount')) { | ||
2581 | + navType = 'discount'; | ||
2582 | + } | ||
2583 | + | ||
2584 | + nav = navInfo[navType]; | ||
2585 | + | ||
2586 | + page = nav.page + 1; | ||
2587 | + if (nav.reload) { | ||
2588 | + page = 1; | ||
2589 | + } else if (nav.end) { | ||
2590 | + | ||
2591 | + //不需要重新加载并且数据请求结束 | ||
2592 | + return; | ||
2593 | + } | ||
2594 | + | ||
2595 | + $.extend(setting, defaultOpt, { | ||
2596 | + type: navType, | ||
2597 | + order: nav.order, | ||
2598 | + page: page | ||
2599 | + }); | ||
2600 | + | ||
2601 | + searching = true; | ||
2602 | + | ||
2603 | + $.ajax({ | ||
2604 | + type: 'GET', | ||
2605 | + url: '/product/newsale/selectNewSale', | ||
2606 | + data: setting, | ||
2607 | + success: function(data) { | ||
2608 | + var noResult = '<p class="no-result">未找到相关搜索结果</p>', | ||
2609 | + $container; | ||
2610 | + | ||
2611 | + switch (navType) { | ||
2612 | + case 'newest': | ||
2613 | + $container = $ngc; | ||
2614 | + break; | ||
2615 | + case 'price': | ||
2616 | + $container = $pgc; | ||
2617 | + break; | ||
2618 | + case 'discount': | ||
2619 | + $container = $dgc; | ||
2620 | + break; | ||
2621 | + } | ||
2622 | + | ||
2623 | + if (data === ' ') { | ||
2624 | + nav.end = true; | ||
2625 | + | ||
2626 | + if (nav.reload) { | ||
2627 | + $container.html(noResult); | ||
2628 | + } | ||
2629 | + } else { | ||
2630 | + if (nav.reload) { | ||
2631 | + $container.html(data); | ||
2632 | + } else { | ||
2633 | + $container.append(data); | ||
2634 | + } | ||
2635 | + | ||
2636 | + lazyLoad($container.find('.lazy')); | ||
2637 | + } | ||
2638 | + | ||
2639 | + nav.reload = false; | ||
2640 | + nav.page = page; | ||
2641 | + | ||
2642 | + searching = false; | ||
2643 | + } | ||
2644 | + }); | ||
2645 | + | ||
2646 | +} | ||
2647 | + | ||
2648 | +lazyLoad($('.lazy')); | ||
2649 | + | ||
2650 | +filter.registerCbFn(search); | ||
2651 | + | ||
2652 | +//导航栏点击逻辑说明: | ||
2653 | +//1.点击非active项时切换active状态 | ||
2654 | +//2.价格和折扣active状态时继续点击切换排序 | ||
2655 | +//3.筛选无active时点击展开筛选面板 | ||
2656 | +//4.筛选有active时点击隐藏筛选面板并恢复点击筛选前active项的active状态 | ||
2657 | +//5.当前active为筛选并且点击其他项时,隐藏筛选面板 | ||
2658 | +$listNav.delegate('li', 'touchstart', function() { | ||
2659 | + var $this = $(this), | ||
2660 | + nav, | ||
2661 | + navType, | ||
2662 | + $active; | ||
2663 | + | ||
2664 | + if ($this.hasClass('filter')) { | ||
2665 | + | ||
2666 | + //筛选面板切换状态 | ||
2667 | + if ($this.hasClass('active')) { | ||
2668 | + filter.hideFilter(); | ||
2669 | + | ||
2670 | + //点击筛选钱的active项回复active | ||
2671 | + $pre.addClass('active'); | ||
2672 | + $this.removeClass('active'); | ||
2673 | + } else { | ||
2674 | + $pre = $this.siblings('.active'); | ||
2675 | + | ||
2676 | + $pre.removeClass('active'); | ||
2677 | + $this.addClass('active'); | ||
2678 | + | ||
2679 | + filter.showFilter(); | ||
2680 | + } | ||
2681 | + } else { | ||
2682 | + | ||
2683 | + if ($this.hasClass('new')) { | ||
2684 | + navType = 'newest'; | ||
2685 | + } else if ($this.hasClass('price')) { | ||
2686 | + navType = 'price'; | ||
2687 | + } else if ($this.hasClass('discount')) { | ||
2688 | + navType = 'discount'; | ||
2689 | + } | ||
2690 | + | ||
2691 | + nav = navInfo[navType]; | ||
2692 | + | ||
2693 | + if ($this.hasClass('active')) { | ||
2694 | + | ||
2695 | + //最新无排序切换 | ||
2696 | + if ($this.hasClass('new')) { | ||
2697 | + return; | ||
2698 | + } | ||
2699 | + | ||
2700 | + if ($this.hasClass('price') || $this.hasClass('discount')) { | ||
2701 | + | ||
2702 | + // 价格/折扣切换排序状态 | ||
2703 | + $this.find('.icon > .iconfont').toggleClass('cur'); | ||
2704 | + $pre = $this; //更新pre为当前项 | ||
2705 | + nav.reload = true; //重置reload,HTML会被替换为逆序的HTML | ||
2706 | + nav.order = nav.order === 0 ? 1 : 0; //切换排序 | ||
2707 | + } | ||
2708 | + } else { | ||
2709 | + $active = $this.siblings('.active'); | ||
2710 | + | ||
2711 | + $pre = $this; //$pre为除筛选导航的其他导航项,若当前active的为筛选,则把$pre置为当前点击项 | ||
2712 | + | ||
2713 | + if ($active.hasClass('filter')) { | ||
2714 | + | ||
2715 | + //若之前active项为筛选,则隐藏筛选面板 | ||
2716 | + filter.hideFilter(); | ||
2717 | + } else { | ||
2718 | + | ||
2719 | + //切换container显示 | ||
2720 | + $goodsContainer.children('.container:not(.hide)').addClass('hide'); | ||
2721 | + | ||
2722 | + switch (navType) { | ||
2723 | + case 'newest': | ||
2724 | + $ngc.removeClass('hide'); | ||
2725 | + break; | ||
2726 | + | ||
2727 | + case 'price': | ||
2728 | + $pgc.removeClass('hide'); | ||
2729 | + break; | ||
2730 | + | ||
2731 | + case 'discount': | ||
2732 | + $dgc.removeClass('hide'); | ||
2733 | + break; | ||
2734 | + } | ||
2735 | + } | ||
2736 | + | ||
2737 | + $active.removeClass('active'); | ||
2738 | + $this.addClass('active'); | ||
2739 | + } | ||
2740 | + | ||
2741 | + if (nav.reload) { | ||
2742 | + search(); | ||
2743 | + } | ||
2744 | + } | ||
2745 | +}); | ||
2746 | + | ||
2747 | +$(window).scroll(function() { | ||
2748 | + | ||
2749 | + //当scroll到1/4$goodsContainer高度后继续请求下一页数据 | ||
2750 | + if ($(window).scrollTop() + winH > | ||
2751 | + $(document).height() - 0.25 * $goodsContainer.height()) { | ||
2752 | + if ($pre !== undefined) { | ||
2753 | + search(); | ||
2754 | + } | ||
2755 | + } | ||
2756 | +}); | ||
2757 | +}); | ||
2758 | +define("js/product/list", ["zepto","lazyload"], function(require, exports, module){ | ||
2759 | +/** | ||
2760 | + * 商品列表页 | ||
2761 | + * @author: xuqi<qi.xu@yoho.cn> | ||
2762 | + * @date: 2015/10/20 | ||
2763 | + */ | ||
2764 | + | ||
2765 | +var $ = require("zepto"), | ||
2766 | + lazyLoad = require("lazyload"); | ||
2767 | + | ||
2768 | +//品牌页参数 | ||
2769 | +var $brandHeader = $('#brand-header'), | ||
2770 | + $introBox = $('#intro-box'); | ||
2771 | + | ||
2772 | +var filter = require("js/plugin/filter"); | ||
2773 | + | ||
2774 | +var $goodsContainer = $('#goods-container'), | ||
2775 | + $ngc = $goodsContainer.children('.new-goods'), | ||
2776 | + $pgc = $goodsContainer.children('.price-goods'), | ||
2777 | + $dgc = $goodsContainer.children('.discount-goods'); | ||
2778 | + | ||
2779 | +var winH = $(window).height(); | ||
2780 | + | ||
2781 | +//默认筛选条件 | ||
2782 | +var defaultOpt = { | ||
2783 | + gender: $('#gender').val(), | ||
2784 | + brand: $('#brand').val(), | ||
2785 | + msort: $('#msort').val(), | ||
2786 | + color: $('#color').val(), | ||
2787 | + size: $('#size').val(), | ||
2788 | + price: $('#price').val(), | ||
2789 | + discount: $('#discount').val() | ||
2790 | +}; | ||
2791 | + | ||
2792 | +var $listNav = $('#list-nav'), | ||
2793 | + | ||
2794 | + //导航数据信息 | ||
2795 | + navInfo = { | ||
2796 | + newest: { | ||
2797 | + order: 1, | ||
2798 | + reload: true, | ||
2799 | + page: 0, | ||
2800 | + end: false | ||
2801 | + }, | ||
2802 | + price: { | ||
2803 | + order: 0, | ||
2804 | + reload: true, | ||
2805 | + page: 0, | ||
2806 | + end: false | ||
2807 | + }, | ||
2808 | + discount: { | ||
2809 | + order: 0, | ||
2810 | + reload: true, | ||
2811 | + page: 0, | ||
2812 | + end: false | ||
2813 | + } | ||
2814 | + }, | ||
2815 | + $pre, //纪录进入筛选前的active项 | ||
2816 | + searching; | ||
2817 | + | ||
2818 | +/** | ||
2819 | + * 筛选注册的回调,筛选子项点击后逻辑 | ||
2820 | + * 需要执行search的场景:1.点选筛选项;2.relaod为true时切换导航;3.下拉加载 | ||
2821 | + * @param opt {type, id} | ||
2822 | + */ | ||
2823 | +function search(opt) { | ||
2824 | + var setting = {}, | ||
2825 | + ext, | ||
2826 | + att, | ||
2827 | + nav, navType, | ||
2828 | + page; | ||
2829 | + | ||
2830 | + if (opt) { | ||
2831 | + | ||
2832 | + //筛选项变更则重置reload为true | ||
2833 | + for (att in navInfo) { | ||
2834 | + if (navInfo.hasOwnProperty(att)) { | ||
2835 | + navInfo[att].reload = true; | ||
2836 | + } | ||
2837 | + } | ||
2838 | + | ||
2839 | + //处理active状态 | ||
2840 | + $listNav.children('.active').removeClass('active'); | ||
2841 | + $pre.addClass('active'); | ||
2842 | + | ||
2843 | + switch (opt.type) { | ||
2844 | + case 'gender': | ||
2845 | + ext = { | ||
2846 | + gender: opt.id | ||
2847 | + }; | ||
2848 | + break; | ||
2849 | + case 'brand': | ||
2850 | + ext = { | ||
2851 | + brand: opt.id | ||
2852 | + }; | ||
2853 | + break; | ||
2854 | + case 'msort': | ||
2855 | + ext = { | ||
2856 | + msort: opt.id | ||
2857 | + }; | ||
2858 | + break; | ||
2859 | + case 'color': | ||
2860 | + ext = { | ||
2861 | + color: opt.id | ||
2862 | + }; | ||
2863 | + break; | ||
2864 | + case 'size': | ||
2865 | + ext = { | ||
2866 | + size: opt.id | ||
2867 | + }; | ||
2868 | + break; | ||
2869 | + case 'price': | ||
2870 | + ext = { | ||
2871 | + price: opt.id | ||
2872 | + }; | ||
2873 | + break; | ||
2874 | + case 'discount': | ||
2875 | + ext = { | ||
2876 | + discount: opt.id | ||
2877 | + }; | ||
2878 | + break; | ||
2879 | + } | ||
2880 | + | ||
2881 | + $.extend(defaultOpt, ext); //扩展筛选项 | ||
2882 | + } | ||
2883 | + | ||
2884 | + if (searching) { | ||
2885 | + return; | ||
2886 | + } | ||
2887 | + | ||
2888 | + //导航类别 | ||
2889 | + if ($pre.hasClass('new')) { | ||
2890 | + navType = 'newest'; | ||
2891 | + } else if ($pre.hasClass('price')) { | ||
2892 | + navType = 'price'; | ||
2893 | + } else if ($pre.hasClass('discount')) { | ||
2894 | + navType = 'discount'; | ||
2895 | + } | ||
2896 | + | ||
2897 | + nav = navInfo[navType]; | ||
2898 | + | ||
2899 | + page = nav.page + 1; | ||
2900 | + if (nav.reload) { | ||
2901 | + page = 1; | ||
2902 | + } else if (nav.end) { | ||
2903 | + | ||
2904 | + //不需要重新加载并且数据请求结束 | ||
2905 | + return; | ||
2906 | + } | ||
2907 | + | ||
2908 | + $.extend(setting, defaultOpt, { | ||
2909 | + type: navType, | ||
2910 | + order: nav.order, | ||
2911 | + page: page | ||
2912 | + }); | ||
2913 | + | ||
2914 | + searching = true; | ||
2915 | + | ||
2916 | + $.ajax({ | ||
2917 | + type: 'GET', | ||
2918 | + url: '/product/list/search', | ||
2919 | + data: setting, | ||
2920 | + success: function(data) { | ||
2921 | + var noResult = '<p class="no-result">未找到相关搜索结果</p>', | ||
2922 | + $container; | ||
2923 | + | ||
2924 | + switch (navType) { | ||
2925 | + case 'newest': | ||
2926 | + $container = $ngc; | ||
2927 | + break; | ||
2928 | + case 'price': | ||
2929 | + $container = $pgc; | ||
2930 | + break; | ||
2931 | + case 'discount': | ||
2932 | + $container = $dgc; | ||
2933 | + break; | ||
2934 | + } | ||
2935 | + | ||
2936 | + if (data === ' ') { | ||
2937 | + nav.end = true; | ||
2938 | + | ||
2939 | + if (nav.reload) { | ||
2940 | + $container.html(noResult); | ||
2941 | + } | ||
2942 | + } else { | ||
2943 | + if (nav.reload) { | ||
2944 | + $container.html(data); | ||
2945 | + } else { | ||
2946 | + $container.append(data); | ||
2947 | + } | ||
2948 | + | ||
2949 | + lazyLoad($container.find('.lazy')); | ||
2950 | + } | ||
2951 | + | ||
2952 | + nav.reload = false; | ||
2953 | + nav.page = page; | ||
2954 | + | ||
2955 | + searching = false; | ||
2956 | + } | ||
2957 | + }); | ||
2958 | + | ||
2959 | +} | ||
2960 | + | ||
2961 | +lazyLoad($('.lazy')); | ||
2962 | + | ||
2963 | +filter.registerCbFn(search); | ||
2964 | + | ||
2965 | +//导航栏点击逻辑说明: | ||
2966 | +//1.点击非active项时切换active状态 | ||
2967 | +//2.价格和折扣active状态时继续点击切换排序 | ||
2968 | +//3.筛选无active时点击展开筛选面板 | ||
2969 | +//4.筛选有active时点击隐藏筛选面板并恢复点击筛选前active项的active状态 | ||
2970 | +//5.当前active为筛选并且点击其他项时,隐藏筛选面板 | ||
2971 | +$listNav.delegate('li', 'tap', function() { | ||
2972 | + var $this = $(this), | ||
2973 | + nav, | ||
2974 | + navType, | ||
2975 | + $active; | ||
2976 | + | ||
2977 | + if ($this.hasClass('filter')) { | ||
2978 | + | ||
2979 | + //筛选面板切换状态 | ||
2980 | + if ($this.hasClass('active')) { | ||
2981 | + filter.hideFilter(); | ||
2982 | + | ||
2983 | + //点击筛选钱的active项回复active | ||
2984 | + $pre.addClass('active'); | ||
2985 | + $this.removeClass('active'); | ||
2986 | + } else { | ||
2987 | + $pre = $this.siblings('.active'); | ||
2988 | + | ||
2989 | + $pre.removeClass('active'); | ||
2990 | + $this.addClass('active'); | ||
2991 | + | ||
2992 | + filter.showFilter(); | ||
2993 | + } | ||
2994 | + } else { | ||
2995 | + | ||
2996 | + if ($this.hasClass('new')) { | ||
2997 | + navType = 'newest'; | ||
2998 | + } else if ($this.hasClass('price')) { | ||
2999 | + navType = 'price'; | ||
3000 | + } else if ($this.hasClass('discount')) { | ||
3001 | + navType = 'discount'; | ||
3002 | + } | ||
3003 | + | ||
3004 | + nav = navInfo[navType]; | ||
3005 | + | ||
3006 | + if ($this.hasClass('active')) { | ||
3007 | + | ||
3008 | + //最新无排序切换 | ||
3009 | + if ($this.hasClass('new')) { | ||
3010 | + return; | ||
3011 | + } | ||
3012 | + | ||
3013 | + if ($this.hasClass('price') || $this.hasClass('discount')) { | ||
3014 | + | ||
3015 | + // 价格/折扣切换排序状态 | ||
3016 | + $this.find('.icon > .iconfont').toggleClass('cur'); | ||
3017 | + $pre = $this; //更新pre为当前项 | ||
3018 | + nav.reload = true; //重置reload,HTML会被替换为逆序的HTML | ||
3019 | + nav.order = nav.order === 0 ? 1 : 0; //切换排序 | ||
3020 | + } | ||
3021 | + } else { | ||
3022 | + $active = $this.siblings('.active'); | ||
3023 | + | ||
3024 | + $pre = $this; //$pre为除筛选导航的其他导航项,若当前active的为筛选,则把$pre置为当前点击项 | ||
3025 | + | ||
3026 | + if ($active.hasClass('filter')) { | ||
3027 | + | ||
3028 | + //若之前active项为筛选,则隐藏筛选面板 | ||
3029 | + filter.hideFilter(); | ||
3030 | + } else { | ||
3031 | + | ||
3032 | + //切换container显示 | ||
3033 | + $goodsContainer.children('.container:not(.hide)').addClass('hide'); | ||
3034 | + | ||
3035 | + switch (navType) { | ||
3036 | + case 'newest': | ||
3037 | + $ngc.removeClass('hide'); | ||
3038 | + break; | ||
3039 | + | ||
3040 | + case 'price': | ||
3041 | + $pgc.removeClass('hide'); | ||
3042 | + break; | ||
3043 | + | ||
3044 | + case 'discount': | ||
3045 | + $dgc.removeClass('hide'); | ||
3046 | + break; | ||
3047 | + } | ||
3048 | + } | ||
3049 | + | ||
3050 | + $active.removeClass('active'); | ||
3051 | + $this.addClass('active'); | ||
3052 | + } | ||
3053 | + | ||
3054 | + if (nav.reload) { | ||
3055 | + search(); | ||
3056 | + } | ||
3057 | + } | ||
3058 | +}); | ||
3059 | + | ||
3060 | +$(window).scroll(function() { | ||
3061 | + | ||
3062 | + //当scroll到1/4$goodsContainer高度后继续请求下一页数据 | ||
3063 | + if ($(window).scrollTop() + winH > | ||
3064 | + $(document).height() - 0.25 * $goodsContainer.height()) { | ||
3065 | + search(); | ||
3066 | + } | ||
3067 | +}); | ||
3068 | + | ||
3069 | +//品牌介绍 | ||
3070 | +$brandHeader.children('.btn-intro').bind('tap', function() { | ||
3071 | + $introBox.removeClass('hide'); | ||
3072 | +}); | ||
3073 | + | ||
3074 | +$('.close-intro, .brand-intro-box').tap(function() { | ||
3075 | + $introBox.addClass('hide'); | ||
3076 | +}); | ||
3077 | + | ||
3078 | +$('#brand-intro').tap(function(e) { | ||
3079 | + e.stopPropagation(); | ||
3080 | +}); | ||
3081 | + | ||
3082 | +//品牌收藏 | ||
3083 | +$brandHeader.children('.btn-col').bind('tap', function() { | ||
3084 | + $(this).toggleClass('coled'); | ||
3085 | +}); | ||
3086 | +}); | ||
3087 | +define("js/product/detail/detail", ["zepto","swiper","lazyload","index"], function(require, exports, module){ | ||
3088 | +/** | ||
3089 | + * 产品打包入口 | ||
3090 | + * @author: liangzhifeng<zhifeng.liang@yoho.cn> | ||
3091 | + * @date: 2015/10/20 | ||
3092 | + */ | ||
3093 | + var $ = require("zepto"), | ||
3094 | + Swiper = require("swiper"), | ||
3095 | + lazyLoad = require("lazyload"), | ||
3096 | + goodsSwiper; | ||
3097 | + | ||
3098 | +lazyLoad($('img.lazy')); | ||
3099 | + | ||
3100 | +goodsSwiper = new Swiper('.banner-swiper', { | ||
3101 | + loop: true, | ||
3102 | + pagination: '.banner-top .pagination-inner', | ||
3103 | + slideElement: 'div', | ||
3104 | + nextButton: '.swiper-button-next', | ||
3105 | + prevButton: '.swiper-button-prev' | ||
3106 | +}); | ||
3107 | +}); | ||
3108 | +define("js/index/index", ["zepto"], function(require, exports, module){ | ||
3109 | +/** | ||
3110 | + * Index打包入口 | ||
3111 | + * @author: xuqi<qi.xu@yoho.cn> | ||
3112 | + * @date: 2015/10/19 | ||
3113 | + */ | ||
3114 | + | ||
3115 | +require("js/index/search"); | ||
3116 | +require("js/index/channel"); | ||
3117 | +}); | ||
3118 | +define("js/index/search", ["zepto"], function(require, exports, module){ | ||
3119 | +/** | ||
3120 | + * 搜索JS | ||
3121 | + * @author: xuqi<qi.xu@yoho.cn> | ||
3122 | + * @date: 2015/10/19 | ||
3123 | + */ | ||
3124 | + | ||
3125 | +var $ = require("zepto"); | ||
3126 | + | ||
3127 | +var $input = $('#search-input input'); | ||
3128 | + | ||
3129 | +var $clear = $('#search-input .clear-input'); | ||
3130 | + | ||
3131 | +var $history = $('.history'); | ||
3132 | + | ||
3133 | +$('#clear-history').bind('tap', function() { | ||
3134 | + $.ajax({ | ||
3135 | + type: 'POST', | ||
3136 | + url: '/search/clearHistory', | ||
3137 | + success: function(data) { | ||
3138 | + if (data.code === 200) { | ||
3139 | + $history.html(''); //clear search history items | ||
3140 | + } | ||
3141 | + } | ||
3142 | + }); | ||
3143 | +}); | ||
3144 | + | ||
3145 | +$input.bind('input', function() { | ||
3146 | + if ($input.val() === '') { | ||
3147 | + $clear.addClass('hide'); | ||
3148 | + } else { | ||
3149 | + $clear.removeClass('hide'); | ||
3150 | + } | ||
3151 | +}); | ||
3152 | + | ||
3153 | +$clear.bind('tap', function() { | ||
3154 | + $input.val('').trigger('input'); | ||
3155 | +}); | ||
3156 | +}); | ||
3157 | +define("js/index/channel", [], function(require, exports, module){ | ||
3158 | +/** | ||
3159 | + * 频道选择 | ||
3160 | + * @author: liangzhifeng<zhifeng.liang@yoho.cn> | ||
3161 | + * @date: 2015/10/12 | ||
3162 | + */ | ||
3163 | + | ||
3164 | +}); |
static/dist/myohobuy/0.0.2/index.css
0 → 100644
1 | +html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font:inherit;font-size:100%;vertical-align:baseline}html{line-height:1}ol,ul{list-style:none}table{border-collapse:collapse;border-spacing:0}caption,th,td{text-align:left;font-weight:normal;vertical-align:middle}q,blockquote{quotes:none}q:before,q:after,blockquote:before,blockquote:after{content:"";content:none}a img{border:none}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}*{-webkit-tap-highlight-color:transparent;-moz-tap-highlight-color:transparent;tap-highlight-color:transparent}html,body{font-family:helvetica,Arial,"黑体";width:100%;font-size:12px;line-height:1.4}.clearfix:before,.clearfix:after{content:"";display:table}.clearfix:after{clear:both}.clearfix{*zoom:1}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}img{max-width:100%;display:block;border:0;margin:0 auto}a{text-decoration:none;outline:none;color:#000}*:focus{outline:none}.hide{display:none}@font-face{font-family:"iconfont";src:url('../assets/font/iconfont.eot?1445952633');src:url('../assets/font/iconfont.eot?&1445952633#iefix') format("embedded-opentype"),url('../assets/font/iconfont.woff?1445952607') format("woff"),url('../assets/font/iconfont.ttf?1445952633') format("truetype"),url('../assets/font/iconfont.svg?1445952633#iconfont') format("svg")}.iconfont{font-family:"iconfont" !important;font-size:16px;font-style:normal;text-decoration:none;-webkit-font-smoothing:antialiased;-webkit-text-stroke-width:0.2px;-moz-osx-font-smoothing:grayscale}.yoho-tip{position:absolute;display:none;text-align:center;width:70%;padding:34px 0;top:50%;left:50%;margin-left:-35%;margin-top:-45px;background-color:#000;opacity:0.7;color:#fff;font-size:18px;border:none;-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px}.yoho-header{position:relative;background-color:#000;color:#fff;width:100%;overflow:hidden;height:2.2rem;line-height:2.2rem}.yoho-header .nav-back{position:absolute;left:0.85rem;top:0.7rem;width:0.45rem;height:0.8rem;background:url('../assets/img/layout/back.png?1445952607') no-repeat;background-size:100% 100%;outline:none}.yoho-header .nav-home{position:absolute;top:0.7rem;right:0.85rem;width:20px;height:20px;background:url('../assets/img/layout/home.png?1445952607') no-repeat;background-size:100% 100%;outline:none}.yoho-header .nav-title{position:absolute;margin-left:1.3rem;margin-right:1.6rem;height:100%;font-size:0.9rem;color:#fff;font-weight:bold;top:0;right:0;left:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:center}.yoho-footer{font-size:12px;background-color:#fff}.yoho-footer .op-row{position:relative;padding:0 30px;height:60px;line-height:60px}.yoho-footer .op-row .user-name{text-decoration:underline;margin-left:.3em;margin-right:1em}.yoho-footer .op-row .back-to-top{position:absolute;right:20px}.yoho-footer .op-row .sep-line{margin:0 0.3em}.yoho-footer .copyright{height:60px;line-height:60px;border-top:1px solid #ccc;text-align:center;color:#666;background-color:#eee}.yoho-footer.bottom{position:absolute;width:100%;bottom:0}.good-info{float:left;width:6.9rem;height:12.15rem;margin:0.7rem 0.375rem 0}.good-info .tag-container{height:0.7rem;width:100%}.good-info .tag-container .good-tag{display:block;float:left;height:0.7rem;font-size:0.45rem;text-align:center;line-height:0.8rem;margin-right:0.1rem}.good-info .tag-container .good-tag:last-child{margin-right:0}.good-info .tag-container .new-tag{width:1.5rem;background-color:#78dc7e;color:#fff}.good-info .tag-container .renew-tag{width:2.25rem;background-color:#78dc7e;color:#fff}.good-info .tag-container .sale-tag{width:1.5rem;background-color:#ff575c;color:#fff}.good-info .tag-container .new-festival-tag{width:2.25rem;background-color:#000;color:#fff}.good-info .tag-container .limit-tag{box-sizing:border-box;width:2.25rem;border:1px solid #000;color:#000;line-height:0.6rem}.good-detail-img{position:relative}.good-detail-img img{display:block;width:100%;height:9.15rem}.good-detail-img .few-tag{position:absolute;bottom:0;width:100%;height:0.7rem;background:#ffac5b;font-size:0.45rem;color:#fff;line-height:0.7rem;text-align:center}.good-detail-text .name a{display:block;line-height:1.4rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-decoration:none;font-size:0.55rem;color:#444}.good-detail-text .price{line-height:0.55rem;font-size:0.55rem}.good-detail-text .price .sale-price{color:#d62927}.good-detail-text .price .sale-price.no-price{color:#000}.good-detail-text .price .market-price{margin:0 0 0 0.125rem;color:#b0b0b0;text-decoration:line-through}.filter-mask,.filter-body{position:absolute;left:0;right:0;top:0}.filter-mask{height:100%;background:rgba(0,0,0,0.1)}.filter-body{background:#fff;color:#000;cursor:pointer;font-size:14px;height:440px}.filter-body .classify{width:50%;height:100%;background:#f8f8f8}.filter-body .classify>li{height:60px;line-height:60px}.filter-body .classify>li>*{box-sizing:border-box}.filter-body .classify>li.active{background:#fff}.filter-body .classify>li .shower{padding-left:20px;width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.filter-body .classify>li .default{color:#999}.filter-body .classify>li .title{float:left;color:#000}.filter-body .sub-classify{position:absolute;display:none;width:50%;height:440px;padding-left:15px;left:50%;top:0;overflow:auto}.filter-body .sub-classify>li{height:60px;line-height:60px;border-bottom:1px solid #e6e6e6;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.filter-body .sub-classify .chosed-icon{display:none}.filter-body .sub-classify .chosed .chosed-icon{display:inline}.filter-body .active>.sub-classify{display:block}body.passport-body{background-color:#444;font-family:"MicroSoft YaHei",SimSun,sans-serif}body.passport-body *{box-sizing:border-box}.passport-page{text-align:center;padding:0 6%}.passport-page .header{position:relative;height:40px;margin:20px 0 30px}.passport-page .header .go-back{display:block;position:absolute;height:30px;width:30px;top:5px;left:0;background:url('../assets/img/passport/go-back.png?1445952608') no-repeat;background-size:100% 100%}.passport-page .header .title{font-size:20px;line-height:40px;color:#fff}.passport-page .header .img-header{width:68px;height:40px;background:url('../assets/img/passport/yoho-family.png?1445952608') no-repeat;background-size:100% 100%;margin:0 auto}.passport-page .input-container,.passport-page .select-container{position:relative;width:100%;height:52px;font-size:20px;background-color:#575757;border:1px solid #606060;border-radius:5px;text-align:left;color:#fff}.passport-page .select-container .select{position:absolute;height:50px;padding-right:40px;right:0;color:#fff;background-color:transparent;border:0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-moz-appearance:none;-webkit-appearance:none;direction:rtl}.passport-page .select-container .select:focus{outline:0;border:none}.passport-page .select-container .select:-moz-focusring{color:transparent;text-shadow:0 0 0 #fff}.passport-page .select-container .select-title{line-height:2.5;margin-left:15px}.passport-page .select-container .arrow-right{position:absolute;width:13px;height:20px;right:15px;top:16px;background:url('../assets/img/passport/arrow-right.png?1445952607') no-repeat;background-size:100% 100%}.passport-page .has-eye,.passport-page .has-clear{padding-right:30px}.passport-page .area-code{position:absolute;left:15px;line-height:2.5}.passport-page .phone-container{padding-left:55px}.passport-page .input{width:100%;line-height:26px;padding:12px 0;padding-left:15px;border-radius:5px;color:#fff;background-color:transparent;border:none}.passport-page .btn{display:block;width:100%;font-size:20px;line-height:2.5;background-color:#36a74c;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;color:#fff}.passport-page .btn.disable{background-color:#a2a2a2}.passport-page .country-select.in-android-uc{width:90px}.passport-page .clear-input{position:absolute;display:none;top:18px;right:10px;width:16px;height:16px;background:url('../assets/img/passport/clear-input.png?1445952607') no-repeat;background-size:100% 100%}.passport-page .eye{position:absolute;top:20px;right:10px;width:19px;height:12px;background:url('../assets/img/passport/eye.png?1445952607') no-repeat;background-size:100% 100%}.passport-page .eye.close{background-image:url('../assets/img/passport/eye-close.png?1445952607')}.passport-page .row{margin-bottom:10px}.reg-page .register-tip{color:#fff;font-size:15px}.login-page .yoho-logo{position:absolute;height:31px;width:26px;background:url('../assets/img/passport/yoho.png?1445952608');background-size:100% 100%;top:10px;left:15px}.login-page .acc-container{padding-left:45px}.login-page .op-container{position:relative;width:100%;margin:20px 0;text-align:left;font-size:16px}.login-page .op-container .go-register{text-decoration:underline;color:#858585}.login-page .op-container .forget-pwd{position:absolute;right:0;text-decoration:underline;color:#858585}.login-page .third-party-login{text-align:left}.login-page .third-party-login>span{font-size:16px;color:#858585}.login-page .third-party-login .tp-link{text-align:center;padding:20px 0}.login-page .third-party-login .tp-link>a{display:inline-block;width:44px;height:44px;margin:0 7px;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%;background-color:#333;background-repeat:no-repeat;background-size:100% 100%}.login-page .third-party-login .tp-link .alipay{background-image:url('../assets/img/passport/alipay.png?1445952607')}.login-page .third-party-login .tp-link .weibo{background-image:url('../assets/img/passport/weibo.png?1445952608')}.login-page .third-party-login .tp-link .weixin{background-image:url('../assets/img/passport/weixin.png?1445952608')}.login-page .third-party-login .tp-link .qq{background-image:url('../assets/img/passport/qq.png?1445952608')}.login-page .international{display:block;width:200px;padding:5px 10px;background-color:#333;border:none;border-radius:20px;margin:0 auto;font-size:16px;color:#d8d8d8}.login-page .login-tip{font-size:16px;position:relative;color:#d8d8d8;margin:15px 0}.login-page .login-tip .info-icon{display:inline-block;height:12px;width:12px;background-image:url('../assets/img/passport/info.png?1445952608');background-size:100% 100%}.login-page .mask{position:fixed;display:none;top:0;bottom:0;right:0;left:0;background-color:rgba(0,0,0,0.5)}.login-page .retrive-pwd-ways{position:fixed;display:none;bottom:5px;left:10px;right:10px;font-size:16px}.login-page .retrive-pwd-ways li{background-color:#fff;width:100%;height:40px;line-height:40px;text-align:center}.login-page .retrive-pwd-ways li:nth-child(1){-moz-border-radius-topleft:5px;-webkit-border-top-left-radius:5px;border-top-left-radius:5px;-moz-border-radius-topright:5px;-webkit-border-top-right-radius:5px;border-top-right-radius:5px;border-bottom:1px solid #9f9f9f}.login-page .retrive-pwd-ways li:nth-child(2){-moz-border-radius-bottomleft:5px;-webkit-border-bottom-left-radius:5px;border-bottom-left-radius:5px;-moz-border-radius-bottomright:5px;-webkit-border-bottom-right-radius:5px;border-bottom-right-radius:5px}.login-page .retrive-pwd-ways li:last-child{margin-top:10px;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.back-email-success-page .tip{font-size:20px;color:#fff;margin-top:30px}.back-email-success-page .sub-tip,.back-email-success-page .resend{color:#939393;font-size:16px}.back-email-success-page .go-email{margin:20px 0 10px}.back-email-success-page .resend{float:right}.reg-code-page .captcha-tip,.back-code-page .captcha-tip{position:absolute;width:148px;text-align:center;right:15px;top:8px;color:#36a74c;padding:5px 0;border:1px solid #36a74c;border-radius:20px;font-size:16px}.reg-code-page .captcha-tip.disable,.back-code-page .captcha-tip.disable{color:#8f8f8f;border-color:#8f8f8f}.reg-code-page .input-container,.back-code-page .input-container{padding-right:190px}.reg-code-page .text-container,.back-code-page .text-container{color:#fff;font-size:16px;margin-bottom:20px}.reg-code-page .phone,.back-code-page .phone{color:#4ecae8}.reg-code-page .clear-input,.back-code-page .clear-input{right:170px}.time-view-like-share{color:#b0b0b0;line-height:0.95rem;height:0.95rem;font-size:0.6rem}.time-view-like-share .iconfont{vertical-align:9%;margin-right:0.1rem;font-size:0.6rem}.time-view-like-share .like-share-container{display:inline-block;float:right}.time-view-like-share .like-share-container>*{float:left}.time-view-like-share .like-share-container .iconfont{position:relative;height:1.5rem;line-height:1.5rem;display:inline-block;color:#b0b0b0;width:1.5rem;top:-0.35rem;font-size:0.85rem;text-align:center;margin-right:0;outline:none}.time-view-like-share .like-share-container .share-btn{margin-left:0.5rem}.time-view-like-share .like-share-container .like-btn.like{color:#444}.time-view-like-share .like-share-container .collect-btn{margin-left:0.5rem}.time-view-like-share .like-share-container .collect-btn.collected{color:#444}.guang-info{margin-bottom:0.75rem;padding:0 0 0.6rem 0;border-top:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;background:#fff}.guang-info .info-author{display:block;width:100%}.guang-info .info-author .avatar{float:left;margin-top:0.5rem;width:1.25rem;height:1.25rem;margin-left:0.75rem;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%}.guang-info .info-author .name{float:left;margin-left:0.75rem;padding:0.75rem 0;font-size:0.7rem;color:#000}.guang-info:last-child{margin-bottom:0}.guang-info .info-img{position:relative;width:100%}.guang-info .info-img img{display:block;width:100%}.guang-info .info-match{position:absolute;top:0;left:0;width:3.25rem;height:1.25rem;line-height:1.25rem;font-size:0.7rem;color:#fff;background:#000;text-align:center;text-decoration:none}.guang-info .info-tag{position:absolute;top:0;left:2.625rem;height:1.25rem;width:1.25rem}.guang-info .info-tag.collocation{background:url('../assets/img/guang/info/collocation.png?1445952608');background-size:100% 100%}.guang-info .info-tag.fashion-good{background:url('../assets/img/guang/info/fashion-good.png?1445952608');background-size:100% 100%}.guang-info .info-tag.fashion-man{background:url('../assets/img/guang/info/fashion-man.png?1445952608');background-size:100% 100%}.guang-info .info-tag.tip{background:url('../assets/img/guang/info/tip.png?1445952608');background-size:100% 100%}.guang-info .info-tag.topic{background:url('../assets/img/guang/info/topic.png?1445952608');background-size:100% 100%}.guang-info .info-deps{margin:0.8rem 0 0 0;padding:0 1rem 0 0.75rem}.guang-info .info-deps .info-title-container{text-decoration:none;color:#000}.guang-info .info-deps .info-title{line-height:1.1rem;color:#000;font-size:1rem;font-weight:bold}.guang-info .info-deps .info-text{margin:0.4rem 0 0 0;line-height:1.15rem;font-size:0.7rem;color:#444}.guang-info .info-deps .time-view-like-share{margin-top:0.4rem}.ps-list-page{background-color:#f0f0f0}.ps-list-page .nav-tab,.ps-list-page .ps-content{width:100%}.ps-list-page .nav-tab{height:1.5rem;padding:0.25rem 0;background-color:#fff}.ps-list-page .star-nav,.ps-list-page .plus-nav{box-sizing:border-box;float:left;width:50%;height:1.5rem;line-height:1.5rem;font-size:16px;text-align:center;color:#ccc}.ps-list-page .star-nav.focus,.ps-list-page .plus-nav.focus{color:#000}.ps-list-page .star-nav{border-right:1px solid #ccc}.ps-list-page .plus-star-row{margin-bottom:0.25rem}.ps-list-page .plus-star-row:last-child{margin-bottom:0}.ps-list-page .plus-star-row>a{display:block;height:7.75rem}.ps-list-page .content.hide{display:none}.ps-list-page .swiper-container{height:7.75rem}.ps-list-page .swiper-pagination-bullet-active{background:#fff}.ps-list-page .brand-deps{height:1rem;line-height:1rem;padding-left:0.25rem;font-size:14px;background:#fff;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ps-detail-page{background-color:#f0f0f0}.ps-detail-page .ps-block{margin-bottom:0.75rem;border-bottom:1px solid #e0e0e0;border-top:1px solid #e0e0e0;background-color:#fff}.ps-detail-page .ps-block.header,.ps-detail-page .ps-block.related-infos{border-top:none}.ps-detail-page .ps-block.related-infos{margin-bottom:0;background-color:#f0f0f0}.ps-detail-page .header{position:relative}.ps-detail-page .header .banner{width:100%;height:7.75rem}.ps-detail-page .header .logo{position:absolute;border:1px solid #b5b5b5;height:4.2rem;width:4.2rem;top:5.65rem;left:1.25rem}.ps-detail-page .header .header-content{padding:0 0.75rem}.ps-detail-page .header .name-islike-container{padding-left:6.2rem;margin-top:0.6rem;font-size:0.85rem}.ps-detail-page .header .name{color:#000;height:1.025rem;width:7.375rem}.ps-detail-page .header .brand-islike{position:relative;float:right;color:#b0b0b0;height:1.5rem;width:1.5rem;line-height:1.5rem;text-align:center;top:-0.25rem;left:-0.25rem}.ps-detail-page .header .brand-islike.like{color:#f00}.ps-detail-page .intro{margin-top:1.225rem;font-size:0.6rem;color:#444;line-height:150%}.ps-detail-page .more-intro{padding:0.75rem 0;font-size:0.7rem;line-height:104%;color:#bbb;float:right}.ps-detail-page .more-intro .icon{display:inline-block;height:100%;width:1rem;-moz-transition:-moz-transform 0.1s ease-in;-o-transition:-o-transform 0.1s ease-in;-webkit-transition:-webkit-transform 0.1s ease-in;transition:transform 0.1s ease-in}.ps-detail-page .more-intro.spread .icon{-moz-transform:rotate(-180deg);-ms-transform:rotate(-180deg);-webkit-transform:rotate(-180deg);transform:rotate(-180deg);-moz-transform:scale(0.83, 0.83);-ms-transform:scale(0.83, 0.83);-webkit-transform:scale(0.83, 0.83);transform:scale(0.83, 0.83)}.ps-detail-page .new-arrival{padding-left:0 0.75rem}.ps-detail-page .new-arrival .new-arrival-content{padding:0.5rem 0.35rem}.ps-detail-page .new-arrival .more-goods-container{height:2.25rem;padding:0 0.75rem;border-top:1px solid #e0e0e0;color:#000}.ps-detail-page .new-arrival .mg-text{height:100%;line-height:2.25rem;color:#000;text-decoration:none;display:block;font-size:16px}.ps-detail-page .new-arrival .more-prods{float:right;color:#b0b0b0}.ps-detail-page .new-arrival .new-arrival-header .more-prods{margin-right:0.75rem;margin-top:0.25rem}.ps-detail-page .new-arrival-header{padding-left:5.55rem;padding-top:0.825rem}.ps-detail-page .new-arrival-header .header-text{font-size:0.7rem;color:#000;line-height:122%;font-weight:bold}.ps-detail-page .related-info-title{margin:0 0.725rem;border:1px solid #e0e0e0;border-bottom:none;line-height:1.8rem;font-size:0.75rem;color:#b0b0b0;text-align:center;background-color:#fff}.ps-detail-page .related-infos-container .guang-info:first-child{margin-top:0}.guang-list-page .editor-header{margin-bottom:0.75rem;padding-top:0.9rem;padding-bottom:1rem;background:#fff;border-bottom:1px solid #e0e0e0}.guang-list-page .avatar{float:left;margin-left:0.75rem}.guang-list-page .avatar img{width:2.5rem;height:2.5rem;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%}.guang-list-page .text{float:left;margin-left:0.8rem;width:11.875rem}.guang-list-page .text .name{font-size:0.8rem;line-height:1rem}.guang-list-page .text .info{margin-top:0.15rem;color:#bdbdbf;font-size:0.6rem;line-height:0.8rem}.guang-list-page .swiper-container{width:100%;height:7.75rem}.guang-list-page .swiper-container img{height:100%;width:100%}.guang-list-page .swiper-container .swiper-pagination{bottom:0;left:0;width:100%}.guang-list-page .swiper-container .swiper-pagination-bullet-active{background:#fff}.guang-list-page .guang-nav{background-color:#fff;overflow:hidden;height:2rem}.guang-list-page .guang-nav-item{float:left;color:#ccc;font-size:0.7rem;padding:0 0.55rem;line-height:2rem}.guang-list-page .guang-nav-item.focus{color:#000}.guang-list-page .info-list-container{overflow-x:hidden}.guang-list-page .info-list.hide{display:none}.guang-list-page .load-more-info{width:100%;height:1.75rem;line-height:1.75rem;text-align:center;font-size:14px;overflow:hidden}.guang-list-page .load-more-info .status.hide{display:none}.clothes-sprite{background-image:url('../assets/img/guang/clothes-s7f658d7d2c.png');background-repeat:no-repeat}.guang-detail-page #wrapper.ios{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.guang-detail-page .author{border-bottom:1px solid #e0e0e0;background:#fff}.guang-detail-page .author>a{display:block;height:100%}.guang-detail-page .author .avatar{float:left;margin-top:0.5rem;margin-left:0.75rem;width:1.25rem;height:1.25rem;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%}.guang-detail-page .author .name{float:left;font-size:0.7rem;color:#000;padding:0.75rem 0;margin-left:0.75rem}.guang-detail-page .author .intro{float:left;font-size:0.7rem;color:#b0b0b0;padding:0.75rem 0;margin-left:0.75rem}.guang-detail-page .post-title{padding:0.4rem 0 0.65rem 0.75rem;background:#fff}.guang-detail-page .post-title .title{line-height:1.5rem;font-size:1rem;color:#000;font-weight:bold}.guang-detail-page .text-block{padding:0.5rem 0.75rem;line-height:1.15rem;font-size:0.7rem;background:#fff;color:#444}.guang-detail-page .big-img-block{padding-bottom:0.125rem;background:#fff}.guang-detail-page .big-img-block img{width:100%;height:16rem}.guang-detail-page .small-img-block{padding-bottom:0.2rem;background:#fff}.guang-detail-page .small-img-block img{float:right;width:7.875rem;height:10.5rem}.guang-detail-page .small-img-block img:first-child{float:left}.guang-detail-page .collocation-block{background:#fff}.guang-detail-page .collocation-block .good-list{padding-left:0.375rem}.guang-detail-page .thumb-container{padding-top:0.75rem;padding-left:0.75rem;background:transparent url('../assets/img/guang/thumb-container-bg.png?1445952607') no-repeat;background-size:200% 100%}.guang-detail-page .thumb-container.fixed-top{position:fixed;left:0;right:0;top:0}.guang-detail-page .thumb-container.fixed-bottom{position:fixed;left:0;right:0;bottom:0;background:rgba(255,255,255,0.9)}.guang-detail-page .thumb-container.absolute{position:absolute;left:0;right:0}.guang-detail-page .thumb-container.static{position:static}.guang-detail-page .thumb-container.hide{display:none}.guang-detail-page .clothe-type{position:absolute;right:0.15rem;bottom:0.85rem;width:20px;height:20px;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%}.guang-detail-page .clothe-type.bag{background:url('../assets/img/guang/clothes-se45f5825d0.png') 0 0 no-repeat;-moz-background-size:20px auto;-o-background-size:20px auto;-webkit-background-size:20px auto;background-size:20px auto;display:block;background-color:#fff;background-size:100%}.guang-detail-page .clothe-type.cloth{background:url('../assets/img/guang/clothes-se45f5825d0.png') 0 -20px no-repeat;-moz-background-size:20px auto;-o-background-size:20px auto;-webkit-background-size:20px auto;background-size:20px auto;display:block;background-color:#fff;background-size:100%}.guang-detail-page .clothe-type.dress{background:url('../assets/img/guang/clothes-se45f5825d0.png') 0 -40px no-repeat;-moz-background-size:20px auto;-o-background-size:20px auto;-webkit-background-size:20px auto;background-size:20px auto;display:block;background-color:#fff;background-size:100%}.guang-detail-page .clothe-type.headset{background:url('../assets/img/guang/clothes-se45f5825d0.png') 0 -60px no-repeat;-moz-background-size:20px auto;-o-background-size:20px auto;-webkit-background-size:20px auto;background-size:20px auto;display:block;background-color:#fff;background-size:100%}.guang-detail-page .clothe-type.lamp{background:url('../assets/img/guang/clothes-se45f5825d0.png') 0 -80px no-repeat;-moz-background-size:20px auto;-o-background-size:20px auto;-webkit-background-size:20px auto;background-size:20px auto;display:block;background-color:#fff;background-size:100%}.guang-detail-page .clothe-type.pants{background:url('../assets/img/guang/clothes-se45f5825d0.png') 0 -100px no-repeat;-moz-background-size:20px auto;-o-background-size:20px auto;-webkit-background-size:20px auto;background-size:20px auto;display:block;background-color:#fff;background-size:100%}.guang-detail-page .clothe-type.shoe{background:url('../assets/img/guang/clothes-se45f5825d0.png') 0 -120px no-repeat;-moz-background-size:20px auto;-o-background-size:20px auto;-webkit-background-size:20px auto;background-size:20px auto;display:block;background-color:#fff;background-size:100%}.guang-detail-page .clothe-type.swim-suit{background:url('../assets/img/guang/clothes-se45f5825d0.png') 0 -140px no-repeat;-moz-background-size:20px auto;-o-background-size:20px auto;-webkit-background-size:20px auto;background-size:20px auto;display:block;background-color:#fff;background-size:100%}.guang-detail-page .clothe-type.under{background:url('../assets/img/guang/clothes-se45f5825d0.png') 0 -160px no-repeat;-moz-background-size:20px auto;-o-background-size:20px auto;-webkit-background-size:20px auto;background-size:20px auto;display:block;background-color:#fff;background-size:100%}.guang-detail-page .clothe-type.watch{background:url('../assets/img/guang/clothes-se45f5825d0.png') 0 -180px no-repeat;-moz-background-size:20px auto;-o-background-size:20px auto;-webkit-background-size:20px auto;background-size:20px auto;display:block;background-color:#fff;background-size:100%}.guang-detail-page .thumb{display:inline-block;position:relative;margin-right:0.55rem;padding-bottom:0.75rem}.guang-detail-page .thumb:last-child{margin-right:0}.guang-detail-page .thumb.focus .thumb-img{border-color:#000}.guang-detail-page .thumb-img{height:3.35rem;width:2.4rem;border:1px solid transparent}.guang-detail-page .related-reco-block{background:#fff;padding-left:0.375rem;border-top:1px solid #e0e0e0}.guang-detail-page .related-reco-block h2{margin-left:-0.375rem;line-height:2.6rem;font-size:0.75rem;color:#b0b0b0;text-align:center}.guang-detail-page .related-reco-block .one-good{padding-left:0.375rem;padding-right:0.75rem;margin-bottom:0.5rem}.guang-detail-page .related-reco-block .one-good .thumb{float:left;height:3.35rem;width:2.4rem}.guang-detail-page .related-reco-block .one-good .content-container{padding-left:3rem;height:3.35rem;line-height:1;font-size:0.6rem}.guang-detail-page .related-reco-block .one-good .content-container>p{height:50%;line-height:2.35rem}.guang-detail-page .related-reco-block .one-good .content-container span{display:inline-block;line-height:0.6rem}.guang-detail-page .related-reco-block .one-good .content-container .price{line-height:1.175rem}.guang-detail-page .related-reco-block .one-good .sale-price{color:#d62927;line-height:1.5}.guang-detail-page .related-reco-block .one-good .sale-price.no-price{color:#000}.guang-detail-page .related-reco-block .one-good .market-price{margin-left:0.125rem;color:#b0b0b0;text-decoration:line-through;line-height:1.5}.guang-detail-page .related-reco-block .one-good .check-detail{display:inline-block;color:#000;border:1px solid;border-radius:2px;float:right;padding:0 5px;line-height:1.5}.guang-detail-page .related-brand{margin-top:0.75rem}.guang-detail-page .related-brand h2{margin:0 0.725rem;background:#fff;border:1px solid #e0e0e0;border-bottom:none;line-height:1.8rem;font-size:0.75rem;color:#b0b0b0;text-align:center}.guang-detail-page .related-brand .brand-list{border-top:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;padding:0.75rem 0 0.75rem;background:#fff}.guang-detail-page .related-brand .brand{float:left;width:3.95rem;height:3.2rem;border-right:1px solid #e0e0e0;margin-bottom:0.25rem}.guang-detail-page .related-brand .brand a{display:block}.guang-detail-page .related-brand .brand:nth-child(4n){border-right:none}.guang-detail-page .related-brand .brand-logo{display:table-cell;width:3.95rem;height:2.35rem;vertical-align:middle}.guang-detail-page .related-brand .brand-logo img{display:block;max-width:3.95rem;max-height:2.35rem;vertical-align:middle;margin:0 auto}.guang-detail-page .related-brand .brand-name{margin:0.25rem 0 0 0;line-height:0.6rem;font-size:0.45rem;color:#babac2;text-align:center;text-decoration:none;border-bottom:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guang-detail-page .related-tag{position:relative;padding-bottom:0.75rem;border-bottom:1px solid #e0e0e0;background:#fff}.guang-detail-page .related-tag .tag-bg{position:absolute;height:1rem;width:1rem;background:url('../assets/img/guang/tag.png?1445952607') no-repeat;background-size:100% 100%;top:0.875rem;left:0.5rem}.guang-detail-page .related-tag .tag-list{margin-left:1.25rem}.guang-detail-page .related-tag li{float:left;margin-top:0.775rem;margin-left:0.775rem}.guang-detail-page .related-tag a{height:1.25rem;line-height:1.25rem;font-size:0.75rem;color:#000;text-decoration:underline;white-space:nowrap}.guang-detail-page .related-info{margin-top:0.75rem}.guang-detail-page .related-info h2{margin:0 0.725rem;background:#fff;border:1px solid #e0e0e0;border-bottom:none;line-height:1.8rem;font-size:0.75rem;color:#b0b0b0;text-align:center}.guang-detail-page .related-info .info-list{background:#fff;padding-bottom:0.75rem;border-top:1px solid #e0e0e0}.guang-detail-page .related-info li{padding-top:0.75rem;margin-bottom:0.25rem}.guang-detail-page .related-info li a{display:block}.guang-detail-page .related-info li img{float:left;margin-left:0.75rem;width:4.55rem;height:2.85rem}.guang-detail-page .related-info li img.square{height:4.55rem}.guang-detail-page .related-info .title,.guang-detail-page .related-info .publish-time{float:left;width:9rem;margin-left:0.75rem;line-height:1rem;color:#444;font-size:0.7rem}.guang-detail-page .related-info .publish-time{font-size:0.45rem;margin-top:0;color:#b0b0b0}.guang-detail-page .related-info .publish-time .iconfont{font-size:0.45rem}.header-download{position:relative;height:5.3rem;padding:1.2rem 0 0;overflow:hidden}.header-download .download-bg{position:absolute;left:0;top:0;width:100%;z-index:-1}.header-download .yoho-logo{height:1.425rem;background:url('../assets/img/app-logo.png?1445952633') no-repeat center center;background-size:auto 100%}.header-download p{line-height:1.2rem;font-size:0.7rem;color:#fff;text-align:center}.header-download .download-btn{display:block;margin:0.45rem auto 0;width:7.35rem;height:1.6rem;line-height:1.6rem;border:0.075rem solid #fff;font-size:0.9rem;text-align:center;color:#fff}.header-download .close-btn{position:absolute;top:0.425rem;right:0.325rem;width:1.25rem;height:1.25rem;background:url('../assets/img/close-icon.png?1445952633');background-size:100% 100%}.banner-top{position:relative}.banner-top .swiper-pagination{position:absolute;left:0;right:0;bottom:0.5rem;text-align:center;z-index:1}.banner-top .swiper-pagination .pagination-inner{display:inline-block}.banner-top .swiper-pagination .pagination-inner span{display:inline-block;width:0.35rem;height:0.35rem;background:#fff;opacity:0.5;margin:0 0.225rem;border-radius:50%}.banner-top .swiper-pagination .pagination-inner span.swiper-pagination-bullet-active{background:#fff;opacity:1}.banner-swiper{height:7.725rem;overflow:hidden}.banner-swiper ul{position:relative;height:100%}.banner-swiper ul li{float:left;height:100%}.banner-swiper ul li img{width:100%;height:100%}.banner-center{margin:0.75rem 0 0;height:5rem;overflow:hidden}.banner-center img{display:block;width:100%;height:100%}.banner-bottom{margin:0.75rem 0 0;height:4rem;overflow:hidden}.banner-bottom img{display:block;width:100%}.side-nav{display:none;background:#fff;position:fixed;top:0;right:2.5rem;bottom:0;left:0;z-index:1;overflow:hidden}.side-nav ul{background:#f0f0f0}.side-nav li{position:relative;height:3.2rem;line-height:3.2rem;border-bottom:1px solid #e0e0e0;background:#fff}.side-nav li a{display:block;height:100%;padding-left:2.75rem;color:#444;font-size:0.6rem}.side-nav li .nav-icon,.side-nav li .nav-img{position:absolute;width:1.5rem;height:1.5rem;top:50%;margin-top:-0.75rem;left:0.6rem}.side-nav li .enter-subnav{position:absolute;right:0.75rem;top:0;bottom:0;font-size:0.9rem;color:#b0b0b0;font-weight:lighter}.side-nav li em{margin-right:0.25rem;font-weight:bold;font-size:0.85rem}.side-nav li.boys i{background:url('../assets/img/side-nav/boys.png?1445952608') no-repeat left center;background-size:100% 100%}.side-nav li.girls i{background:url('../assets/img/side-nav/girls.png?1445952608') no-repeat left center;background-size:100% 100%}.side-nav li.kids i{background:url('../assets/img/side-nav/kids.png?1445952608') no-repeat left center;background-size:100% 100%}.side-nav li.life i{background:url('../assets/img/side-nav/life.png?1445952608') no-repeat left center;background-size:100% 100%}.side-nav li.new{margin:0.475rem 0 0;border-top:1px solid #e0e0e0}.side-nav li.new i{background:url('../assets/img/side-nav/new.png?1445952608') no-repeat left center;background-size:100% 100%}.side-nav li.guang .nav-icon,.side-nav li.trendfinder .nav-icon{background:url('../assets/img/side-nav/guang.png?1445952608') no-repeat left center;background-size:100% 100%}.side-nav.on{display:block}.sub-nav{position:fixed;top:0;right:2.5rem;left:0;bottom:0;background:#fff !important;z-index:2;-moz-transform:translateX(100%);-ms-transform:translateX(100%);-webkit-transform:translateX(100%);transform:translateX(100%);-moz-transition:-moz-transform 0.3s;-o-transition:-o-transform 0.3s;-webkit-transition:-webkit-transform 0.3s;transition:transform 0.3s}.sub-nav li{height:2.725rem;line-height:2.725rem;border:none}.sub-nav li a{position:relative;display:block;margin:0 0 0 0.75rem;padding-left:1.25rem;border-bottom:1px solid #e0e0e0;font-size:0.9rem;z-index:2}.sub-nav li .nav-point{position:absolute;left:0rem;font-size:0.4rem;color:#f0f0f0}.sub-nav li em{font-weight:normal;font-size:0.9rem}.sub-nav li:hover .nav-point,.sub-nav li.current .nav-point{color:#3e3e3e}.sub-nav li:first-child{height:2.2rem;line-height:2.2rem;background:#3e3e3e}.sub-nav li:first-child a{color:#fff;border-bottom:none;padding-left:2.75rem}.sub-nav li:first-child .nav-back{position:absolute;left:0}.sub-nav.show{-moz-transform:translateX(0);-ms-transform:translateX(0);-webkit-transform:translateX(0);transform:translateX(0);-moz-transition:-moz-transform 0.3s;-o-transition:-o-transform 0.3s;-webkit-transition:-webkit-transform 0.3s;transition:transform 0.3s}.floor-header{margin:0.725rem 0.75rem 0;background:#fff;border:1px solid #e0e0e0;border-bottom:none;height:1.75rem;line-height:1.75rem;text-align:center;font-size:0.75rem;color:#b1b1b1}.floor-header-more{position:relative;height:2.475rem;line-height:2.475rem;margin:0.725rem 0 0;background:#fff;border-top:1px solid #e0e0e0;text-align:center;font-size:0.8rem;color:#444}.floor-header-more .more-btn{position:absolute;right:0.75rem;top:0;bottom:0;color:#b0b0b0}.hot-brands{background:#fff;border-bottom:1px solid #e0e0e0}.hot-brands a{display:block;text-decoration:none;height:100%}.hot-brands .brand{float:left;width:3.95rem;height:4.35rem;border-right:1px solid #e0e0e0;border-top:1px solid #e0e0e0;overflow:hidden}.hot-brands .brand .brand-logo{display:table-cell;width:3.95rem;height:3.2rem;line-height:3.2rem;text-align:center;font-size:0;vertical-align:middle}.hot-brands .brand .brand-logo img{max-width:100%;max-height:100%}.hot-brands .brand .brand-name{line-height:1.1rem;font-size:0.45rem;color:#babac2;text-align:center;text-decoration:none;border-bottom:none;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis;white-space:nowrap}.hot-brands .brand:nth-child(5n){border-right:none}.hot-brands .more{float:left;width:7.925rem;height:4.35rem;border-top:1px solid #e0e0e0}.hot-brands .more a{display:block;width:100%;height:100%;background:url('../assets/img/more-brand.png?1445952607') no-repeat;background-size:100% 100%}.brands-swiper{background:#fff;width:100%;height:4.5rem;margin-bottom:0.7rem;overflow:hidden}.brands-swiper .brands-list{position:relative;height:4.5rem}.brands-swiper .brands-list li{float:left;padding-left:5%;width:21.875%;height:3.5rem;border-top:1px solid #e0e0e0}.brands-swiper .brands-list li a{position:relative;display:table-cell;width:100%;height:3.5rem;line-height:3.5rem;font-size:0;vertical-align:middle}.brands-swiper .brands-list li img{max-width:100%;max-height:100%;vertical-align:middle}.brands-swiper .brands-list li .brands-title{position:absolute;left:0.2rem;right:0.2rem;bottom:-0.8rem;width:100%;height:0.7rem;line-height:0.7rem;text-align:center;font-size:0.45rem;color:#444;background:rgba(255,255,255,0.5);overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis;white-space:nowrap}.fine-brands{background:#fff;border-top:1px solid #e0e0e0}.fine-brands a{display:block;text-decoration:none}.fine-brands .brand{float:left;width:3.95rem;height:4.35rem;border-right:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0}.fine-brands .brand .brand-logo{display:table-cell;width:3.95rem;height:3.25rem;vertical-align:middle}.fine-brands .brand .brand-logo img{display:block;max-width:3.95rem;max-height:3.25rem;vertical-align:middle;margin:0 auto}.fine-brands .brand .brand-name{line-height:1.1rem;font-size:0.45rem;color:#babac2;text-align:center;text-decoration:none;border-bottom:none;overflow:hidden}.fine-brands .brand:nth-child(4n){border-right:none}.creative-life{background:#fff}.creative-life .banner{display:block}.creative-life .banner img{width:100%;height:10.1rem}.creative-life .classify-list>li{float:left;width:5.3rem;height:4.8rem;border-bottom:1px solid #e0e0e0;border-right:1px solid #e0e0e0}.creative-life .classify-logo{display:table-cell;width:5.3rem;height:3.5rem;vertical-align:middle}.creative-life .classify-logo img{display:block;max-width:5.3rem;max-height:3.5rem;vertical-align:middle;margin:0 auto}.creative-life .classify-name{line-height:1.3rem;font-size:0.65rem;color:#000;text-align:center;text-decoration:none;border-bottom:none;overflow:hidden}.creative-life .classify:nth-child(3n){border-right:0}.plus-star img{display:block;width:100%;height:4.95rem}.maybe-like{background:#fff;padding-left:0.375rem;border-top:1px solid #ccc;border-bottom:1px solid #ccc;margin-top:0.75rem}.maybe-like .title{height:2.6rem;line-height:2.6rem;text-align:center;color:#dadada}.maybe-like .icon{display:inline-block;height:0.775rem;width:0.775rem;background:url('../assets/img/up-icon.png?1445952607') no-repeat;background-size:100% 100%}.maybe-like .maybe-like-nav{width:100%;height:1.5rem;padding:0.25rem 0;background-color:#fff}.maybe-like .maybe-like-nav-item{box-sizing:border-box;float:left;width:50%;height:1.5rem;line-height:1.5rem;text-align:center;color:#ccc;border-right:1px solid #ccc}.maybe-like .maybe-like-nav-item.focus{color:#000}.maybe-like .load-more-info{width:100%;height:14.25rem;line-height:1.75rem;text-align:center;font-size:14px;overflow:hidden}.maybe-like .load-more-info .status.hide{display:none}.icons-wrapper{box-sizing:border-box;padding:0.75rem 0 0.4rem;background:#fff;border-bottom:1px solid #e0e0e0}.icons-item{float:left;margin-bottom:0.25rem;width:25%;height:3.65rem;text-align:center}.imagebar{margin:0 auto;display:flex;display:-webkit-flex;width:2.45rem;height:2.45rem;overflow:hidden;align-items:center;justify-content:center}.imagebar img{max-width:100%;max-height:100%}.linkbar{display:block;line-height:1.1rem;font-size:0.6rem;color:#444}.trend-coll-wrapper{background:#fff;height:16.125rem;border-bottom:1px solid #e0e0e0}.trend-coll-header{position:relative;widows:100%}.trend-coll-header .trend-coll-title{width:100%;height:2.5rem;line-height:2.5rem;text-align:center;font-size:0.85rem;color:#747474}.trend-coll-header .more{position:absolute;right:0.6rem;top:0.5rem}.trend-coll-content{padding:0 0.375rem}.trend-coll-content .lspan{float:left;margin:0 0.375rem}.trend-coll-content .rspan{float:right;margin:0 0.375rem}.lspanimg{display:block;float:right;width:6.875rem;height:6.875rem}.rspanimg{display:block;float:right;width:6.875rem;height:6.875rem}.trend-coll-tail{box-sizing:border-box;width:100%;height:6.675rem;clear:both}.recommend-title{widows:100%;height:2.5rem;line-height:2.5rem;text-align:center;font-size:0.85rem}.recommend-swiper{width:100%;height:3.5rem;overflow:hidden}.recommend-list{position:relative}.recommend-list .recommend-item{float:left;padding-left:0.75rem;width:3.5rem;height:3.5rem}.recommend-list .recommend-item a{display:block;width:100%;height:100%}.recommend-list .recommend-item a img{width:100%;height:100%}.trend-topic-wrapper{background:#fff}.trend-topic-content{position:relative;width:100%;border-bottom:1px solid #e0e0e0}.trend-topic-content .swiper-pagination{position:absolute;left:0;right:0;bottom:0.55rem;text-align:center}.trend-topic-content .swiper-pagination .pagination-inner{display:inline-block}.trend-topic-content .swiper-pagination span{float:left;width:0.4rem;height:0.4rem;margin:0 0.2rem;background:#efefef;border-radius:50%}.trend-topic-content .swiper-pagination span.swiper-active-switch{background:#b0b0b0}.trend-topic-swiper{height:13.35rem;overflow:hidden}.trend-topic-swiper ul{position:relative}.trend-topic-swiper ul li{float:left;height:13.35rem}.trend-topic-swiper ul li .img-box{display:flex;display:-webkit-flex;height:9rem;margin:0 0.75rem;align-items:center;justify-content:center}.trend-topic-swiper ul li .img-box img{max-width:100%;max-height:100%}.trend-topic-swiper ul li .item-content{margin:0.5rem 0.75rem 0}.trend-topic-swiper ul li .item-content .title{line-height:1.3rem;font-size:0.75rem;color:#000}.trend-topic-swiper ul li .item-content .time{margin:0.4rem 0 0;line-height:0.6rem;color:#afafaf;font-size:0.45rem}.trend-topic-swiper ul li .item-content .time .time-icon{margin-right:0.2rem;font-size:0.35rem}.category-swiper{position:relative;height:10.075rem;overflow:hidden}.category-swiper ul li{float:left;width:100%}.category-swiper ul li a,.category-swiper ul li img{display:block;width:100%;height:100%}.category-swiper .swiper-pagination{position:absolute;left:0;right:0;bottom:0.5rem;text-align:center}.category-swiper .swiper-pagination .pagination-inner{display:inline-block}.category-swiper .swiper-pagination .pagination-inner span{display:inline-block;width:0.35rem;height:0.35rem;background:#fff;opacity:0.5;margin:0 0.225rem;border-radius:50%}.category-swiper .swiper-pagination .pagination-inner span.swiper-active-switch{opacity:1}.goods-category .category-list{background:#f5f7f6;height:9.575rem}.goods-category .category-list li{float:left;width:4.775rem;height:4.525rem;padding:0.25rem 0 0;border-left:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0}.goods-category .category-list li .first-show{display:none}.goods-category .category-list li .img-box{display:flex;display:-webkit-flex;height:3.5rem;align-items:center;justify-content:center}.goods-category .category-list li .img-box img{max-width:100%;max-height:100%}.goods-category .category-list li .category-name{line-height:0.8rem;font-size:0.5rem;color:#444;text-align:center}.goods-category .category-list li:first-child{width:6.325rem;height:8.375rem;border-left:none;padding:1.2rem 0 0 0}.goods-category .category-list li:first-child .first-show{display:block;line-height:1.1rem;font-size:0.75rem;color:#444;text-align:center}.goods-category .category-list li:first-child .img-box{height:5.5rem}.goods-category .category-list li:first-child .category-name{line-height:1rem;font-size:0.55rem}.hot-category{margin:0.75rem 0 0;border-top:1px solid #e0e0e0}.hot-category .category-banner{height:4.95rem}.hot-category .category-banner img{display:block;width:100%;height:100%}.hot-category .category-list{background:#fff;border-top:1px solid #e0e0e0}.hot-category .category-list li{float:left;width:3.95rem;height:4.35rem;border-bottom:1px solid #e0e0e0;border-left:1px solid #e0e0e0}.hot-category .category-list li .img-box{width:100%;height:3.45rem;text-align:center;vertical-align:middle}.hot-category .category-list li .img-box img{max-width:100%;max-height:100%;vertical-align:middle}.home-header{height:2.2rem;line-height:2.2rem;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzMyMzIzMiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzQxNDE0MSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #323232),color-stop(100%, #414141));background-image:-moz-linear-gradient(#323232,#414141);background-image:-webkit-linear-gradient(#323232,#414141);background-image:linear-gradient(#323232,#414141);position:relative}.home-header .iconfont{color:#fff}.home-header .nav-btn{position:absolute;left:0.8rem;top:0;bottom:0;z-index:2}.home-header .logo{display:block;margin:0 auto;width:5.2rem;height:2.175rem;background:url('../assets/img/yohologo02.png?1445952607') no-repeat center center;background-size:100%}.home-header .logo.animate{background:url('../assets/img/yohologo01.png?1445952607') no-repeat center center;background-size:100%}.home-header .search-btn{position:absolute;right:0.8rem;top:0;bottom:0}.home-header .search-btn a{color:#fff}.girls-wrap .home-header{background:#FF88AE}.kids-wrap .logo{font-style:italic;font-family:"helvetica","Arial","榛戜綋";font-weight:bold;color:#fff}.mobile-container{width:100%;overflow:hidden}.mobile-wrap{position:relative;z-index:2;background:#f0f0f0;-moz-transition:-moz-transform 0.3s;-o-transition:-o-transform 0.3s;-webkit-transition:-webkit-transform 0.3s;transition:transform 0.3s}.mobile-wrap.menu-open{-moz-transform:translateX(13.5rem);-ms-transform:translateX(13.5rem);-webkit-transform:translateX(13.5rem);transform:translateX(13.5rem);-moz-transition:-moz-transform 0.3s;-o-transition:-o-transform 0.3s;-webkit-transition:-webkit-transform 0.3s;transition:transform 0.3s}.overlay{display:none;position:absolute;top:0;left:0;right:0;bottom:0;background:#000;opacity:0.3;z-index:99}.overlay.show{display:block}.brand-page .newbrand-search{width:93.75%;height:1.5rem;padding:0.35rem 3.125%;background-color:#f8f8f8;left:0;top:2.2rem;position:fixed;z-index:2}.brand-page .newbrand-search .search-box{position:relative;height:1.5rem;background-color:#FFF;border-radius:0.75rem;padding:0 0.8rem 0 1.3rem}.brand-page .newbrand-search .search-box .search-input{width:100%;height:1.5rem;border:0}.brand-page .newbrand-search .search-box .search-icon{position:absolute;font-size:0.6rem;top:0.5rem;left:0.6rem;color:#bdbdbd}.brand-page .hot-brand{margin:0.75rem 0 0}.brand-page .hot-brand .hot-brand-list{background:#fff}.brand-page .hot-brand .hot-brand-list li{float:left;width:3.95rem;height:3.95rem}.brand-page .hot-brand .hot-brand-list li .img-box{width:100%;height:100%}.brand-page .brand-list{width:100%}.brand-page .brand-list .title-bar{width:100%;background:#eeeeee;color:#999999;position:relative}.brand-page .brand-list .title-bar h2{padding:0 0.5rem;height:1.25rem;line-height:1.25rem;font-size:0.85rem;border-top:1px solid #e6e6e6;background-color:#f4f4f4}.brand-page .brand-list p{cursor:pointer;padding:0 0.5rem}.brand-page .brand-list p a{display:block;padding-top:0.25rem;height:1.9rem;line-height:1.9rem;font-size:0.85rem;border-bottom:1px solid #f3f3f3;border-top:1px solid #f9f9f9}.brand-page .brand-list p a i{display:inline-block;margin-left:0.6rem;width:1rem;height:1rem;text-align:center;vertical-align:middle;font-size:0.7rem;line-height:1rem;color:#fff;border-radius:50%}.brand-page .brand-list p a .icon-hot{background:#ff0000}.brand-page .brand-list p a .icon-new{background:#86c048}.brand-page .right-bar{width:1.5rem;top:6rem !important;overflow:hidden;position:fixed;right:0.05rem;border-radius:0.3rem;background:rgba(0,0,0,0.8);z-index:2}.brand-page .right-bar b{height:0.8rem;line-height:0.7rem;text-align:center;display:block;color:#999999;font-weight:bold}.brand-page .con{padding-top:0.25rem}.category-page{font-size:0.75rem}.category-page .search-input{position:relative;background-color:#f8f8f8;padding:0.325rem 0.5rem}.category-page .search-input p{box-sizing:border-box;width:100%;height:1.5rem;line-height:1.5rem;border:none;padding-left:1.325rem;border-radius:1.5rem;font-size:0.75rem;background:#fff;color:#999}.category-page .search-icon{position:absolute;top:0;bottom:0;left:1.075rem;line-height:2.15rem;color:#999}.category-page .category-nav{height:1.775rem;border-bottom:1px solid #e6e6e6}.category-page .category-nav li{display:block;box-sizing:border-box;float:left;height:100%;line-height:1.775rem;width:25%;text-align:center;border-right:1px solid #e6e6e6;color:#999}.category-page .category-nav li:last-child{border-right:none}.category-page .category-nav li.focus{color:#000}.category-page .content.hide{display:none}.category-page .primary-level{float:left;box-sizing:border-box;width:40%;background:#f8f8f8}.category-page .primary-level>li{height:1.725rem;line-height:1.725rem;padding-left:0.8rem}.category-page .primary-level>li.focus{background-color:#fff}.category-page .sub-level-container{float:left;box-sizing:border-box;padding-left:0.5rem;background:#fff;width:60%}.category-page .sub-level{width:100%}.category-page .sub-level.hide{display:none}.category-page .sub-level>li{height:1.775rem;line-height:1.775rem;border-bottom:1px solid #e6e6e6}.category-page .sub-level>li:last-child{border-bottom:none}.newarrival-page{background-color:#f0f0f0}.newarrival-page .swiper-container{width:100%;height:7.75rem}.newarrival-page .swiper-container img{height:100%;width:100%}.newarrival-page .swiper-container .swiper-pagination{bottom:0;left:0;width:100%}.newarrival-page .swiper-container .swiper-pagination-bullet-active{background:#fff}.newarrival-page .newarrival-nav{width:100%;height:1.5rem;padding:0.25rem 0;background-color:#fff}.newarrival-page .newarrival-nav a{display:block;box-sizing:border-box;width:100%;height:100%;color:#999}.newarrival-page .newarrival-nav-item{box-sizing:border-box;float:left;width:25%;height:1.5rem;line-height:1.5rem;text-align:center;color:#ccc;border-right:1px solid #ccc}.newarrival-page .newarrival-nav-item.focus{color:#000}.discount-page{background-color:#f0f0f0}.discount-page .swiper-container{width:100%;height:7.75rem}.discount-page .swiper-container img{height:100%;width:100%}.discount-page .swiper-container .swiper-pagination{bottom:0;left:0;width:100%}.discount-page .swiper-container .swiper-pagination-bullet-active{background:#fff}.discount-page .discount-nav{width:100%;height:1.5rem;padding:0.25rem 0;background-color:#fff}.discount-page .discount-nav-item{box-sizing:border-box;float:left;width:25%;height:1.5rem;line-height:1.5rem;text-align:center;color:#ccc;border-right:1px solid #ccc}.discount-page .discount-nav-item.focus{color:#000}.discount-page .list-nav>li{float:left;width:25%;height:33px;line-height:33px;text-align:center;font-size:14px}.discount-page .list-nav a{display:block;box-sizing:border-box;width:100%;height:100%;color:#999}.discount-page .list-nav .active>a{border-bottom:2px solid #000;color:#000}.discount-page .list-nav .active>a .iconfont{color:#999}.discount-page .list-nav .active>a .iconfont.cur{color:#000}.discount-page .list-nav .new .iconfont{-moz-transform:scale(0.8, 0.8);-ms-transform:scale(0.8, 0.8);-webkit-transform:scale(0.8, 0.8);transform:scale(0.8, 0.8);font-weight:bold}.discount-page .list-nav .filter .iconfont{font-size:12px;-moz-transition:-moz-transform ease-in;-o-transition:-o-transform ease-in;-webkit-transition:-webkit-transform ease-in;transition:transform ease-in}.discount-page .list-nav .filter.active .iconfont{-moz-transform:rotate(-180deg);-ms-transform:rotate(-180deg);-webkit-transform:rotate(-180deg);transform:rotate(-180deg)}.discount-page .list-nav .icon{position:relative}.discount-page .list-nav .icon i{position:absolute;-moz-transform:scale(0.8, 0.8);-ms-transform:scale(0.8, 0.8);-webkit-transform:scale(0.8, 0.8);transform:scale(0.8, 0.8);font-weight:bold}.discount-page .list-nav .icon .up{top:-11px}.discount-page .list-nav .icon .down{top:-4px}.discount-page .no-result{text-align:center;vertical-align:middle;color:#ccc;font-size:1.2em;margin-top:220px}.discount-page .goods-container{position:relative;min-height:440px}.good-list-page .search-input{position:relative;padding:7px 46px 7px 15px;background:#f8f8f8}.good-list-page .search-input .search-icon{position:absolute;font-size:12px;top:16px;left:24px}.good-list-page .search-input input{height:30px;width:100%;border-radius:15px;text-indent:26px;background:#fff;border:none}.good-list-page .search-input .clear-input{position:absolute;top:12px;right:50px}.good-list-page .search-input .search{position:absolute;top:12px;right:0;border:none;background:transparent;font-size:16px}.good-list-page .brand-way{padding-bottom:10px;background:#f4f4f4}.good-list-page .brand-way>a{display:block;height:40px;line-height:40px;padding:0 10px;border-bottom:1px solid #e6e6e6;border-top:1px solid #e6e6e6;font-size:17px;background:#fff}.good-list-page .brand-way .brand-thumb{display:block;float:left;width:75px;height:40px;margin:0}.good-list-page .brand-way .entry{color:#999;font-size:14px;float:right}.good-list-page .brand-header{position:relative;height:3.75rem}.good-list-page .brand-header>img{display:block;height:100%}.good-list-page .btn-intro,.good-list-page .btn-col{position:absolute;display:block;width:62px;height:24px;line-height:24px;text-align:center;border:1px solid #fff;color:#fff;top:50%;margin-top:-12px}.good-list-page .btn-intro{right:90px}.good-list-page .btn-col{right:15px}.good-list-page .btn-col .iconfont{font-size:12px}.good-list-page .brand-intro-box{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.3);padding:44px 0;z-index:1;overflow:auto}.good-list-page .brand-intro-box .brand-intro{position:relative;box-sizing:border-box;width:85%;margin:0 7.5%;background:#fff;padding:10px 8%}.good-list-page .brand-intro-box h2{text-align:center;font-size:17px;line-height:40px}.good-list-page .brand-intro-box .con{font-size:12px;line-height:16px;padding:20px 0;border-top:1px solid #e6e6e6;border-bottom:1px solid #e6e6e6;overflow-x:hidden}.good-list-page .brand-intro-box .fo{font-size:18px;height:40px;line-height:40px;text-align:center}.good-list-page .brand-intro-box .close-intro{position:absolute;top:6px;right:6px}.good-list-page .list-nav>li{float:left;width:25%;height:33px;line-height:33px;text-align:center;font-size:14px}.good-list-page .list-nav a{display:block;box-sizing:border-box;width:100%;height:100%;color:#999}.good-list-page .list-nav .active>a{border-bottom:2px solid #000;color:#000}.good-list-page .list-nav .active>a .iconfont{color:#999}.good-list-page .list-nav .active>a .iconfont.cur{color:#000}.good-list-page .list-nav .new .iconfont{-moz-transform:scale(0.8, 0.8);-ms-transform:scale(0.8, 0.8);-webkit-transform:scale(0.8, 0.8);transform:scale(0.8, 0.8);font-weight:bold}.good-list-page .list-nav .filter .iconfont{font-size:12px;-moz-transition:-moz-transform ease-in;-o-transition:-o-transform ease-in;-webkit-transition:-webkit-transform ease-in;transition:transform ease-in}.good-list-page .list-nav .filter.active .iconfont{-moz-transform:rotate(-180deg);-ms-transform:rotate(-180deg);-webkit-transform:rotate(-180deg);transform:rotate(-180deg)}.good-list-page .list-nav .icon{position:relative}.good-list-page .list-nav .icon i{position:absolute;-moz-transform:scale(0.8, 0.8);-ms-transform:scale(0.8, 0.8);-webkit-transform:scale(0.8, 0.8);transform:scale(0.8, 0.8);font-weight:bold}.good-list-page .list-nav .icon .up{top:-11px}.good-list-page .list-nav .icon .down{top:-4px}.good-list-page .no-result{text-align:center;vertical-align:middle;color:#ccc;font-size:1.2em;margin-top:220px}.good-list-page .goods-container{position:relative;min-height:440px}.good-detail-page .banner-top{height:16.5rem;overflow:hidden;position:relative}.good-detail-page .banner-top .swiper-pagination{position:absolute;left:0;right:0;bottom:1rem;text-align:center}.good-detail-page .banner-top .swiper-pagination .pagination-inner{display:inline-block}.good-detail-page .banner-top .swiper-pagination .pagination-inner span{display:inline-block;width:0.35rem;height:0.35rem;background:#fff;opacity:0.5;margin:0 0.225rem;border-radius:50%}.good-detail-page .banner-top .swiper-pagination .pagination-inner span.swiper-active-switch{opacity:1}.good-detail-page .banner-top .swiper-pagination .pagination-inner .swiper-pagination-bullet-active{background-color:#000000}.good-detail-page .banner-swiper{height:15rem;width:11.2rem;margin:0.75rem 2.4rem;position:relative;overflow:hidden}.good-detail-page .banner-swiper ul{position:relative;height:100%}.good-detail-page .banner-swiper ul li{float:left;height:100%}.good-detail-page .detailName{font-size:0.7rem;color:#222222;padding-bottom:6px;text-align:center}.good-detail-page .detailTitle{font-size:0.9rem;text-align:center;padding-bottom:2px;font-weight:bold}.good-detail-page .vipLevel{color:#999999;text-align:center;padding-bottom:15px}.good-detail-page .detailToBuy{padding:0 10px;margin-bottom:20px;text-align:center;overflow:hidden}.good-detail-page .detailToBuy .AddFavorite{background-color:#cccccc;width:2.75rem;height:2.5rem;line-height:2.5rem;font-size:1.7em;color:white;margin-right:0.5rem;overflow:hidden;float:left !important}.good-detail-page .detailToBuy .toBuyNow{height:50px;line-height:50px;color:white;display:block;margin-left:2.4em;font-size:1.84em;overflow:hidden;font-weight:bold;background-color:#ed0010}.good-detail-page .discountNotice{margin-bottom:20px}.good-detail-page .discountNotice p{height:44px;line-height:44px;padding:0 10px;margin-bottom:1px;font-size:12px;background-color:#eeeeee}.good-detail-page .detailToShop{margin:0 10px 20px;padding:10px;height:47px;line-height:47px;overflow:hidden;background-color:#eee}.good-detail-page .detailToShop .fz14{font-size:1.2em;float:right !important}.good-detail-page .detailSize{padding:0 10px;margin-bottom:20px}.good-detail-page .detailSize h3{text-align:center;font-size:1.3em;margin-bottom:5px}.good-detail-page .detailSize h3 span{font-size:0.6em;display:block;text-transform:uppercase}.good-detail-page .detailSize table{background-color:white;width:100%}.good-detail-page .detailSize td{text-align:left;padding:0.4em 0.8em;border:1px solid white;background-color:#eee;font-size:1em}.good-detail-page .detail-img{padding:0 10px;margin-bottom:10px}.index-page{width:100%;overflow:hidden;margin:0 auto}.index-page .index-container{position:relative;-moz-transition:-moz-transform 0.5s;-o-transition:-o-transform 0.5s;-webkit-transition:-webkit-transform 0.5s;transition:transform 0.5s;background-color:white}.index-page .index-container .index_header{height:2rem;line-height:2rem;overflow:hidden;padding:0 0.25rem}.index-page .index-container .index-channel{color:#FFF;text-align:center;position:relative;background-color:#000000}.index-page .index-container .index-channel .index-channel-list{padding-top:50%;width:100%;position:absolute;top:0}.index-page .index-container .index-channel .index-channel-list .homestyle{margin-bottom:1.25rem;width:7.1825rem}.search-page .search-input{position:relative;padding:7px 46px 7px 15px;background:#f8f8f8}.search-page .search-input .search-icon{position:absolute;font-size:12px;top:16px;left:24px;color:#b2b2b2}.search-page .search-input input{height:30px;width:100%;border-radius:15px;text-indent:26px;background:#fff;border:none}.search-page .search-input .clear-input{position:absolute;top:12px;right:50px;color:#b2b2b2}.search-page .search-input .search{position:absolute;top:12px;right:0;border:none;background:transparent;font-size:16px}.search-page .search-items{padding:20px 10px}.search-page .search-items h3{font-size:12px;margin-bottom:10px}.search-page .search-items li{float:left;height:34px;line-height:34px;font-size:14px;height:34px;line-height:34px;margin-right:10px;margin-bottom:10px;padding:0 10px;background:#f8f8f8;color:#000}.search-page .search-items .clear-history{height:32px;line-height:32px;border:1px solid #e6e6e6;background:#fff;font-size:14px}.shopping-cart-good{position:relative;padding-left:0.4rem}.shopping-cart-good .checkbox{position:absolute;top:50%;margin-top:-0.35rem;font-size:0.7rem;color:#f0f0f0}.shopping-cart-good .checkbox.icon-cb-checked{color:#000}.shopping-cart-good .info{float:left;margin-left:1.25rem;padding:0.4rem 0;border-bottom:1px solid #e0e0e0}.shopping-cart-good .thumb{float:left;width:3rem;height:4rem}.shopping-cart-good .deps{margin-left:3.375rem;padding-right:0.5rem}.shopping-cart-good .name{font-size:0.7rem}.shopping-cart-good .row:nth-child(2){font-size:0.55rem;height:1.125rem;line-height:1.125rem}.shopping-cart-good .row:nth-child(2)>span{margin-right:0.375rem}.shopping-cart-good .row:nth-child(3){position:relative}.shopping-cart-good .color,.shopping-cart-good .size{color:#b6b6b6}.shopping-cart-good .appear-date{color:#e01}.shopping-cart-good .price{font-size:0.6rem;color:#000}.shopping-cart-good .count{font-size:0.5rem;color:#999;margin-left:0.55rem}.shopping-cart-good .sold-out,.shopping-cart-good .low-stocks{display:inline-block;width:2.5rem;height:0.75rem;line-height:0.75rem;font-size:0.55rem;border:none;color:#fff;text-align:center;margin-left:0.4rem}.shopping-cart-good .sold-out{background:#999}.shopping-cart-good .low-stocks{background:#e01}.shopping-cart-good .icon-del,.shopping-cart-good .icon-edit{position:absolute;color:#ccc;font-size:0.75rem}.shopping-cart-good .icon-del{right:0.35rem}.shopping-cart-good .icon-edit{right:1.8rem}.shopping-cart-good .opt-panel{position:absolute;width:5.5rem;height:4.75rem;right:0;color:#fff}.shopping-cart-good .opt-panel>div{float:left;box-sizing:border-box;width:2.75rem;height:100%;text-align:center;padding:1rem 0.5rem 0;font-size:15px}.shopping-cart-good .opt-panel span{display:block}.shopping-cart-good .opt-panel .put-in-favorite{background:#bbb}.shopping-cart-good .opt-panel .del{background:#999}.shopping-cart-good .opt-panel .del .iconfont{margin-bottom:0.5rem}.chose-panel{position:absolute;top:0;bottom:0;left:0;right:0;background:rgba(0,0,0,0.3)}.chose-panel .main{position:absolute;height:15.25rem;bottom:0;left:0;right:0;background:#fff}.chose-panel .infos{height:11.5rem;padding:0 0.55rem;padding-top:0.75rem}.chose-panel .chose-items{height:8.125rem;overflow:auto}.chose-panel .basic-info{margin-bottom:0.75rem}.chose-panel .thumb{float:left;width:2rem;height:2.65rem}.chose-panel .text-info{margin-left:2.55rem}.chose-panel .text-info .name{font-size:0.7rem}.chose-panel .text-info .sale-price{color:#e10}.chose-panel .text-info .sale-price.no-price{color:#000}.chose-panel .text-info .market-price{color:#b0b0b0;text-decoration:line-through}.chose-panel .color-list,.chose-panel .size-list,.chose-panel .num{position:relative;font-size:0.7rem;padding-left:2rem}.chose-panel .color-list>span,.chose-panel .size-list>span,.chose-panel .num>span{position:absolute;left:0;top:0.5rem}.chose-panel .block{float:left;display:block;width:2rem;height:2rem;border:1px solid #000;margin-right:0.75rem;margin-bottom:0.75rem;line-height:2rem;text-align:center}.chose-panel .block.chosed{border-color:#e10;background:url('../assets/img/shopping-cart/right.png?1445952608') no-repeat;background-size:0.95rem;background-position:bottom right;color:#e10}.chose-panel .num{margin-bottom:0.5rem}.chose-panel .num .btn{float:left;display:block;height:2rem;width:2rem;text-align:center;line-height:2rem;border:1px solid #e6e6e6}.chose-panel .num .btn.disable{color:#e6e6e6}.chose-panel .good-num{float:left;width:2.65rem;height:2rem;line-height:2rem;padding:0;border:none;border-top:1px solid #e6e6e6;border-bottom:1px solid #e6e6e6;text-align:center}.chose-panel .btn-wrap{height:3rem;border-top:1px solid #e6e6e6;padding:0.5rem;text-align:center;box-sizing:border-box}.chose-panel .btn-wrap .btn-sure{width:6.5rem;height:2rem;background:#e10;color:#fff;font-size:0.8rem;border:none}.gift-advance-page .gift-advance-good{position:relative;padding:0.5rem 0;margin-left:0.85rem;height:4rem;border-bottom:1px solid #e0e0e0}.gift-advance-page .gift-advance-good:last-child{border-bottom:none}.gift-advance-page .advance-block .gift-advance-good:last-child{border-bottom:none}.gift-advance-page .advance-block:last-child .gift-advance-good:last-child{border-bottom:1px solid #e0e0e0}.gift-advance-page .thumb-wrap{position:relative;float:left;width:3rem;height:4rem}.gift-advance-page .thumb-wrap .thumb{width:100%;height:100%}.gift-advance-page .tag{position:absolute;bottom:0;left:0;right:0;height:0.625rem;color:#fff;text-align:center;background:#a1ce4e}.gift-advance-page .tag:before{content:'赠品'}.gift-advance-page .deps{margin-left:3.375rem}.gift-advance-page .name{font-size:0.7rem}.gift-advance-page .row:nth-child(2){font-size:0.55rem;height:1.125rem;line-height:1.125rem}.gift-advance-page .row:nth-child(2)>span{margin-right:0.375rem}.gift-advance-page .row:nth-child(3){position:relative}.gift-advance-page .color,.gift-advance-page .size{color:#b6b6b6}.gift-advance-page .price{font-size:0.6rem;color:#000}.gift-advance-page .count{font-size:0.5rem;color:#999;margin-left:0.55rem}.gift-advance-page .chose{position:absolute;width:2.2rem;height:1.45rem;background:#f8f8f8;border:1px solid #ccc;right:0.5rem;top:1.775rem;font-size:0.65rem}.gift-advance-page .title{height:1.25rem;line-height:1.25rem;padding-left:0.5rem;font-size:0.6rem;background:#f8f8f8}.gift-advance-page .advance-block .tag{background:#eb76aa}.gift-advance-page .advance-block .tag:before{content:'加价购'}.icon-checkbox:before{content:"\e61c"}.icon-cb-checked:before{content:"\e61d"}.shopping-cart-page{padding-bottom:3rem}.shopping-cart-page .cart-nav{height:0.75rem;color:#c6c6c6;border-bottom:1px solid #e0e0e0;padding:0.75rem 0}.shopping-cart-page .cart-nav li{float:left;width:50%}.shopping-cart-page .cart-nav li.active{color:#000}.shopping-cart-page .cart-nav span{display:block;box-sizing:border-box;width:100%;height:0.75rem;line-height:0.75rem;font-size:0.75rem;text-align:center}.shopping-cart-page .cart-nav li:first-child span{border-right:1px solid #e0e0e0}.shopping-cart-page .login-info{height:1.15rem;padding:0.425rem 0.5rem;color:#24acaa;text-align:center;font-size:0.7rem}.shopping-cart-page .login-info .btn{display:inline-block;background:#ed0010;color:#fff;width:2rem;height:1.15rem;line-height:1.15rem}.shopping-cart-page .presell-info{height:1.5rem;padding:0.375rem 0.75rem;font-size:0.55rem;background:#f0f0f0;color:#b7b7b7}.shopping-cart-page .presell-info>span{display:block}.shopping-cart-page .presell-info .iconfont{float:left;font-size:1.125rem}.shopping-cart-page .presell-info .txt{height:0.75rem;line-height:0.75rem;margin-left:2rem}.shopping-cart-page .cart-goods{border-bottom:1px solid #e0e0e0}.shopping-cart-page .cart-goods .shopping-cart-good:last-child .info{border-bottom:none}.shopping-cart-page .freebie-and-advance-buy{padding:0.5rem;font-size:0.6rem;border-bottom:1px solid #e0e0e0}.shopping-cart-page .freebie-and-advance-buy>li{box-sizing:border-box;height:2.25rem;line-height:2.25rem;margin-bottom:0.25rem;background:#f8f8f8;padding:0 0.5rem}.shopping-cart-page .freebie-and-advance-buy>li:last-child{margin-bottom:0}.shopping-cart-page .freebie-and-advance-buy>li a{float:right}.shopping-cart-page .freebie-and-advance-buy .count{color:#f00}.shopping-cart-page .freebie-and-advance-buy .icon-right-arrow{color:#8f8f8f}.shopping-cart-page .price-compute{padding:0.5rem;border-bottom:1px solid #e0e0e0;font-size:0.65rem}.shopping-cart-page .price-compute .title{display:inline-block;width:4.375rem}.shopping-cart-page .price-compute .minus{float:right}.shopping-cart-page .balance{position:fixed;box-sizing:border-box;bottom:0;width:100%;padding:0.5rem;height:3rem;border-top:1px solid #e0e0e0;background:#fff}.shopping-cart-page .balance .iconfont{position:absolute;top:50%;margin-top:-0.35rem;font-size:0.7rem}.shopping-cart-page .balance p{float:left;margin-left:1.25rem;font-size:0.65rem}.shopping-cart-page .balance p span{display:block;height:1rem;line-height:1rem}.shopping-cart-page .balance p .tip{color:#666;font-size:0.55rem}.shopping-cart-page .balance .btn-balance{float:right;width:3.5rem;height:2rem;line-height:2rem;text-align:center;background:#e01;color:#fff;border:none;font-size:0.7rem} |
static/dist/myohobuy/0.0.2/index.js
0 → 100644
1 | +define("index",["zepto","lazyload","swiper","mlellipsis","iscroll-probe","index"],function(e,a,s){var i;e("js/common"),e("js/passport/index"),e("js/guang/index"),e("js/home/index"),e("js/product/index"),e("js/index/index"),s.exports=i}),define("js/common",["zepto"],function(e,a,s){function i(e){var a,s,i=document.cookie;return document.cookie&&""!==document.cookie&&(s=i.indexOf(e+"="),s>-1&&(s+=e.length+1,a=decodeURIComponent(l.trim(i.substring(s,i.indexOf(";",s)))))),a}function t(){var e,a=i("_UID");return"undefined"==typeof a?0:(e=a.split("::"),"undefined"==typeof e||e.length<4?0:e)}function n(){var e=t();return 0===e?0:e[1]}function o(){var e=i("_g");return"undefined"==typeof e?"":JSON.parse(e).k}var l=e("zepto");!function(){var e=l("#yoho-footer"),a=e.children(".op-row"),s=t();l("body").height()<l(window).height()&&e.addClass("bottom"),0===s?a.prepend('<a href="http://m.yohobuy.com/signin.html">登录</a><span class="sep-line">|</span><a href="http://m.yohobuy.com/reg.html">注册</a>'):a.prepend('Hi,<a class="user-name" href="http://m.yohobuy.com/home?tmp='+Math.random()+'">'+s[0]+'</a><a href="http://m.yohobuy.com/passport/signout/index?token='+s[3]+'">退出</a>'),e.removeClass("hide")}(),window.cookie=i,window.getUser=t,window.getUid=n,window.getShoppingKey=o}),define("js/passport/index",["zepto"],function(e,a,s){e("js/passport/register/register"),e("js/passport/register/code"),e("js/passport/register/password"),e("js/passport/login/login"),e("js/passport/login/international"),e("js/passport/back/mobile"),e("js/passport/back/code"),e("js/passport/back/email"),e("js/passport/back/email-success"),e("js/passport/back/new-password")}),define("js/passport/register/register",["zepto"],function(e,a,s){var i=e("zepto"),t=i("#phone-num"),n=i("#country-select"),o=i("#area-code"),l=i("#btn-next"),r=e("js/passport/api"),d=e("js/plugin/tip"),c=i.trim,p=d.show;r.selectCssHack(i("#country-select")),r.bindClearEvt(),t.bind("input",function(){""===c(t.val())?l.addClass("disable"):l.removeClass("disable")}),n.change(function(){o.text(n.val())}),l.on("tap",function(){var e=c(t.val()),a=n.val();l.hasClass("disable")||(r.phoneRegx[a].test(e)?i.ajax({url:"/passport/reg/verifymobile",type:"POST",data:{areaCode:a.replace("+",""),phoneNum:e},success:function(e){200===e.code?location.href=e.data:p(e.message)}}):p("手机号格式不正确,请重新输入"))})}),define("js/passport/api",["zepto"],function(e,a,s){function i(){var e,a=l(".has-eye");a.append('<div class="eye close"></div>'),e=a.children(".eye"),e.on("tap",function(e){var a=l(this),s=a.siblings(".pwd");e.preventDefault(),a.toggleClass("close"),a.hasClass("close")?s.attr("type","password"):s.attr("type","text"),s.focus()})}function t(){var e,a=l(".has-clear");a.append('<div class="clear-input"></div>'),e=a.children(".clear-input"),e.on("tap",function(a){var s=e.siblings(".input");s.val("").trigger("input").focus(),a.preventDefault()}),a.children(".input").bind("input",function(){var e=l(this),a=e.siblings(".clear-input"),s=r(e.val());""===s?a.hide():a.show()})}function n(e){return e.length>=6&&e.length<=20?!0:!1}function o(e){function a(){var a=e.find("option:selected").text().length;switch(a){case 2:e.outerWidth(90);break;case 3:e.outerWidth(110);break;default:e.outerWidth(130)}}var s=navigator.userAgent;s.match(/uc/i)&&s.match(/android/i)?e.change(function(){a()}):e.removeClass("in-android-uc")}var l=e("zepto"),r=l.trim,d=/^([a-zA-Z0-9]+[_|\_|\.|-]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.|-]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/,c={"+86":/^1[35847]{1}[0-9]{9}$/,"+852":/^[965]{1}[0-9]{7}$/,"+853":/^[0-9]{8}$/,"+886":/^[0-9]{10}$/,"+65":/^[98]{1}[0-9]{7}$/,"+60":/^1[1234679]{1}[0-9]{8}$/,"+1":/^[0-9]{10}$/,"+82":/^01[0-9]{9}$/,"+44":/^7[789][0-9]{8}$/,"+81":/^0[9|8|7][0-9]{9}$/,"+61":/^[0-9]{11}$/};s.exports={emailRegx:d,phoneRegx:c,bindEyesEvt:i,bindClearEvt:t,pwdValidate:n,selectCssHack:o}}),define("js/plugin/tip",["zepto"],function(e,a,s){function i(e,a){var s,i;"undefined"!=typeof e&&(s=e.toString(),i=a&&a>0?a:2e3,t.text(s).show(),n=setTimeout(function(){"block"===t.css("display")&&t.hide()},i))}var t,n,o=e("zepto");!function(){var e='<div id="yoho-tip" class="yoho-tip"></div>';o(".yoho-page").append(e),t=o("#yoho-tip"),t.on("tap",function(){t.hide(),clearTimeout(n)})}(),a.show=i}),define("js/passport/register/code",["zepto"],function(e,a,s){e("js/passport/code")(!0)}),define("js/passport/code",["zepto"],function(e,a,s){var i=e("zepto");s.exports=function(a){function s(){var e,a=59;e=setInterval(function(){0===a?(o.text("重发验证码").removeClass("disable"),clearInterval(e)):o.text("重发验证码 ("+a--+"秒)")},1e3)}var t=i("#captcha"),n=i("#btn-next"),o=i("#captcha-tip"),l=i("#phone-num").val(),r=i("#area-code").val().replace("+",""),d=e("js/passport/api"),c=e("js/plugin/tip"),p=i.trim,u=c.show,h=a?"reg":"back";d.bindClearEvt(),t.bind("input",function(){""!==p(t.val())?n.removeClass("disable"):n.addClass("disable")}),o.on("tap",function(){o.hasClass("disable")||i.ajax({type:"POST",url:"/passport/"+h+"/sendcode",data:{phoneNum:l,areaCode:r},success:function(e){200===e.code?(o.text("重发验证码 (60秒)").addClass("disable"),s()):u(e.message)}})}),n.on("tap",function(){n.hasClass("disable")||i.ajax({type:"POST",url:"/passport/"+h+"/verifycode",data:{phoneNum:l,areaCode:r,code:p(t.val()),token:i("#token").val()},success:function(e){200===e.code?location.href=e.data:u(e.message)}})}),s()}}),define("js/passport/register/password",["zepto"],function(e,a,s){var i=e("zepto"),t=i("#pwd"),n=i("#btn-sure"),o=e("js/passport/api"),l=e("js/plugin/tip"),r=i.trim,d=l.show;o.bindEyesEvt(),t.bind("input",function(){""===r(t.val())?n.addClass("disable"):n.removeClass("disable")}),n.on("tap",function(){var e=r(t.val());n.hasClass("disable")||(o.pwdValidate(e)===!1?d("密码6-20位,请重新输入"):i.ajax({type:"POST",url:"/passport/reg/setpassword",data:{password:e,phoneNum:i("#phone-num").val(),areaCode:i("#area-code").val(),token:i("#token").val()},success:function(e){200===e.code?(d("注册成功"),setTimeout(function(){location.href=e.data},1e3)):401===e.code||404===e.code||505===e.code?d(e.message):(d(e.message),setTimeout(function(){location.href=e.data},1e3))}}))})}),define("js/passport/login/login",["zepto"],function(e,a,s){function i(){u&&h?d.removeClass("disable"):d.addClass("disable")}function t(){c.show(),p.show()}function n(){c.hide(),p.hide()}var o=e("zepto"),l=o("#account"),r=o("#pwd"),d=o("#btn-login"),c=o("#retrive-pwd-mask"),p=o("#retrive-pwd-ways"),u=!1,h=!1,f=e("js/passport/api"),g=e("js/plugin/tip"),v=o.trim,m=g.show;f.bindEyesEvt(),f.bindClearEvt(),l.bind("input",function(){u=""!==v(l.val())?!0:!1,i()}),r.bind("input",function(){h=""===v(r.val())?!1:!0,i()}),d.on("tap",function(){var e=v(l.val()),a=v(r.val());d.hasClass("disable")||((/^[0-9]+$/.test(e)||f.emailRegx.test(e))&&f.pwdValidate(a)?o.ajax({type:"POST",url:"/passport/login/auth",data:{account:e,password:a},success:function(e){200===e.code?(m("登录成功"),setTimeout(function(){location.href=e.data},1e3)):m(e.message)},error:function(){m("网络断开连接啦~")}}):m("账号或密码有错误,请重新输入"))}),o("#forget-pwd").on("tap",function(){t()}),c.on("tap",function(){n()}),o("#cancel-retrive").on("tap",function(e){e.preventDefault(),n()}),l.trigger("input"),r.trigger("input")}),define("js/passport/login/international",["zepto"],function(e,a,s){function i(){c&&p?d.removeClass("disable"):d.addClass("disable")}var t=e("zepto"),n=t("#phone-num"),o=t("#country-select"),l=t("#area-code"),r=t("#pwd"),d=t("#btn-login"),c=!1,p=!1,u=e("js/passport/api"),h=e("js/plugin/tip"),f=t.trim,g=h.show;u.selectCssHack(o),u.bindEyesEvt(),u.bindClearEvt(),n.bind("input",function(){c=""===f(n.val())?!1:!0,i()}),r.bind("input",function(){var e=f(r.val());p=""===e?!1:!0,i()}),o.change(function(){l.text(o.val())}),d.on("tap",function(){var e=f(n.val()),a=o.val(),s=f(r.val());d.hasClass("disable")||(u.phoneRegx[a].test(e)&&u.pwdValidate(s)?t.ajax({type:"POST",url:"/passport/login/auth",data:{areaCode:a.replace("+",""),account:e,password:s},success:function(e){200===e.code?(g("登录成功"),setTimeout(function(){location.href=e.data},1e3)):g(e.message)},error:function(){g("网络断开连接啦~")}}):g("账号或密码有错误,请重新输入"))}),n.trigger("input"),r.trigger("input")}),define("js/passport/back/mobile",["zepto"],function(e,a,s){var i=e("zepto"),t=i("#phone-num"),n=i("#country-select"),o=i("#area-code"),l=i("#btn-next"),r=e("js/passport/api"),d=e("js/plugin/tip"),c=i.trim,p=d.show;r.selectCssHack(i("#country-select")),r.bindClearEvt(),t.bind("input",function(){""===c(t.val())?l.addClass("disable"):l.removeClass("disable")}),n.change(function(){o.text(n.val())}),l.on("tap",function(){var e=c(t.val()),a=n.val();l.hasClass("disable")||(r.phoneRegx[a].test(e)?i.ajax({url:"/passport/back/sendcode",type:"POST",data:{areaCode:a.replace("+",""),phoneNum:e},success:function(e){200===e.code?location.href=e.data:p(e.message)}}):p("手机号格式不正确,请重新输入"))})}),define("js/passport/back/code",["zepto"],function(e,a,s){e("js/passport/code")(!1)}),define("js/passport/back/email",["zepto"],function(e,a,s){var i=e("zepto"),t=i("#email"),n=i("#btn-sure"),o=e("js/passport/api"),l=e("js/plugin/tip"),r=i.trim,d=l.show;o.bindClearEvt(),t.bind("input",function(){""===r(t.val())?n.addClass("disable"):n.removeClass("disable")}),n.on("tap",function(){var e=r(t.val());n.hasClass("disable")||(o.emailRegx.test(e)?i.ajax({url:"/passport/back/sendemail",type:"POST",data:{email:e},success:function(e){200===e.code?location.href=e.data:d(e.message)}}):d("邮箱格式不正确,请重新输入"))})}),define("js/passport/back/email-success",["zepto"],function(e,a,s){var i=e("zepto"),t=i("#resend"),n=e("js/plugin/tip"),o=n.show;t.on("tap",function(e){e.preventDefault(),i.ajax({url:t.data("url"),type:"GET",success:function(e){o(200===e.code?e.message:e.message)}})})}),define("js/passport/back/new-password",["zepto"],function(e,a,s){var i=e("zepto"),t=i("#pwd"),n=i("#btn-ok"),o=e("js/passport/api"),l=e("js/plugin/tip"),r=i.trim,d=l.show,c=i("#phone-num");o.bindEyesEvt(),t.bind("input",function(){""===r(t.val())?n.addClass("disable"):n.removeClass("disable")}),n.on("touchstart",function(){var e,a,s=r(t.val()),l=!0;n.hasClass("disable")||(e={password:s},0===c.length&&(l=!1),l?(i.extend(e,{phoneNum:c.val(),areaCode:i("#areaCode").val(),token:i("#token").val()}),a="/passport/back/passwordByMobile"):(i.extend(e,{code:i("#email-code").val()}),a="/passport/back/passwordByEmail"),o.pwdValidate(s)?i.ajax({type:"POST",url:a,data:e,success:function(e){200===e.code?(d("密码修改成功"),setTimeout(function(){location.href=e.data},1e3)):d(e.message)}}):d("密码6-20位,请重新输入"))})}),define("js/guang/index",["zepto","lazyload","swiper","mlellipsis","iscroll-probe","index"],function(e,a,s){e("js/guang/plus-star/list"),e("js/guang/plus-star/detail"),e("js/guang/home"),e("js/guang/list"),e("js/guang/detail")}),define("js/guang/plus-star/list",["zepto","lazyload","swiper","index"],function(e,a,s){var i,t=e("zepto"),n=e("lazyload"),o=e("swiper"),l=t("#nav-tab > li"),r=t("#ps-content > .content");n(t("img.lazy")),i=new o(".swiper-container",{lazyLoading:!0,pagination:".swiper-pagination"}),t("#nav-tab").delegate("li","tap",function(){t(this).hasClass("focus")||(l.toggleClass("focus"),r.toggleClass("hide"),t(document).trigger("scroll"))})}),define("js/guang/plus-star/detail",["zepto","mlellipsis","lazyload"],function(e,a,s){var i,t,n=e("zepto"),o=e("mlellipsis"),l=e("lazyload"),r=n("#intro"),d=n("#intro-more-txt"),c=n("#related-infos-container"),p=e("js/guang/info"),u=e("js/plugin/tip"),h=n("#brand-info").data("id");o.init(),l(n("img.lazy")),r[0].mlellipsis(3),setTimeout(function(){i=r.text(),t=r.attr("title")}),p.initInfosEvt(c),n("#more-intro").bind("tap",function(){var e=n(this);e.toggleClass("spread"),e.hasClass("spread")?(r.text(t),d.text("收起")):(r.text(i),d.text("more"))}),n("#brand-like").bind("tap",function(e){var a="ok",s=n(this);e.preventDefault(),s.hasClass("like")&&(a="cancel"),n.ajax({type:"POST",url:"/guang/opt/favoriteBrand",data:{id:h,opt:a},success:function(e){200===e.code?s.toggleClass("like"):400===e.code&&u.show("未登录")},error:function(){u.show("网络断开连接了~")}})})}),define("js/guang/info",["zepto","mlellipsis","lazyload"],function(e,a,s){function i(e){r(e.find("img.lazy")),e.each(function(){var e=o(this),a=e.find(".info-title"),s=e.find(".info-text");a[0].mlellipsis(2),s[0].mlellipsis(2)})}function t(e){e.delegate(".like-btn","tap",function(e){var a=o(e.currentTarget),s=a.closest(".guang-info"),i="ok";a.hasClass("like")&&(i="cancel"),o.ajax({type:"POST",url:"/guang/opt/praiseArticle",data:{id:s.data("id"),opt:i},success:function(e){var s=e.code;200===s&&(a.next(".like-count").text(e.data),a.toggleClass("like"))},error:function(){d.show("网络断开连接了~")}})}),i(e.find(".guang-info"))}function n(e,a){h||a.end||(h=!0,o.ajax({type:"GET",url:" /guang/index/page",data:a,success:function(s){return" "===s?(a.end=!0,h=!1,p.addClass("hide"),void u.removeClass("hide")):(e.append(s),i(e.find(".guang-info")),a.page++,void(h=!1))},error:function(){d.show("网络断开连接了~"),h=!1}}))}var o=e("zepto"),l=e("mlellipsis"),r=e("lazyload"),d=e("js/plugin/tip"),c=o("#load-more-info"),p=o(""),u=o(""),h=!1;l.init(),c.length>0&&(p=c.children(".loading"),u=c.children(".no-more")),a.initInfosEvt=t,a.setLazyLoadAndMellipsis=i,a.loadMore=n}),define("js/guang/home",["zepto","swiper","mlellipsis","lazyload","index"],function(e,a,s){var i,t=e("zepto"),n=e("swiper"),o=e("js/guang/info"),l=o.setLazyLoadAndMellipsis,r=o.loadMore,d=t("#load-more-info"),c=t(""),p=t(""),u=t(window).height(),h=d.height(),f=t("#info-list"),g=f.children(".info-list"),v=t("#guang-nav"),m=v.children(".focus"),b=m.data("type"),w={};d.length>0&&(c=d.children(".loading"),p=d.children(".no-more")),i=new n(".swiper-container",{lazyLoading:!0,pagination:".swiper-pagination"}),o.initInfosEvt(f),function(){var e=t("#gender").val();v.children(".guang-nav-item").each(function(){var a=t(this).data("type");w[a]={page:1,gender:e,type:a,end:!1}})}(),v.delegate(".guang-nav-item","tap",function(){var e,a,s=t(this);s.hasClass("focus")||(a=s.index(),s.addClass("focus"),m.removeClass("focus"),g.not(".hide").addClass("hide"),e=g.eq(a),e.removeClass("hide"),l(e.children(".guang-info")),m=s,b=s.data("type"),w[b].end?(c.addClass("hide"),p.removeClass("hide")):(c.removeClass("hide"),p.addClass("hide")))}),t(document).scroll(function(){t(window).scrollTop()+u>=t(document).height()-h&&r(g,w[b])})}),define("js/guang/list",["zepto","mlellipsis","lazyload"],function(e,a,s){var i=e("zepto"),t=e("js/guang/info"),n=t.loadMore,o=i(window).height(),l=i("#load-more").height(),r=i("#author-infos"),d=i("#tag"),c={page:1,end:!1},p=i("#info-list");t.initInfosEvt(p),r.length>0&&i.extend(c,{authorId:r.data("id")}),d.length>0&&i.extend(c,{tag:d.val()}),i(document).scroll(function(){i(window).scrollTop()+o>=i(document).height()-l&&n(p,c)})}),define("js/guang/detail",["zepto","mlellipsis","lazyload","iscroll-probe"],function(e,a,s){function i(e){var a=e.offset().left,s=-C+a+b/2+"px";o.css({backgroundPosition:s+" bottom"}),v&&w.css({backgroundPosition:s+" bottom"})}function t(e){var a,s,t,u=p(e.currentTarget),f=u.index();u.hasClass("focus")||(l.filter(".focus").removeClass("focus"),v&&(a=u.closest(".fixed-thumb-container").length>0?o:w,s=a.find(".thumb").eq(f),w.find(".thumb.focus").removeClass("focus"),s.addClass("focus")),u.addClass("focus"),i(u),r.not(".hide").addClass("hide"),t=r.eq(f),t.removeClass("hide"),h(t.find(".lazy")),v?c&&c.scrollToElement(d,400):p("body").animate({scrollTop:n.offset().top},400))}var n,o,l,r,d,c,p=e("zepto"),u=e("mlellipsis"),h=e("lazyload"),f=e("iscroll-probe"),g=p(".author .intro"),v=navigator.userAgent.indexOf("iPhone")>0?!0:!1,m=p(".collocation-block").length>0?!0:!1,b=0,w=p(""),d=document.querySelector("#wrapper .collocation-block"),C=p(window).width();v&&p("#wrapper").addClass("ios"),u.init(),h(p(".lazy")),p(".info-list .title, .one-good .reco-name").each(function(){this.mlellipsis(2)}),parseInt(g.offset().left,10)===parseInt(g.css("margin-left"),10)&&g.css("padding-top",0),m&&(n=p(".collocation-block"),o=n.children(".thumb-container"),l=o.find("li"),r=n.find(".prod"),b=l.width(),v&&(w=p("#wrapper").after(o.clone().addClass("fixed-thumb-container fixed-bottom")).next(".thumb-container"),h(w.find(".lazy"),{event:"sporty"})),i(l.filter(".focus")),o.delegate(".thumb","touchend",t),v&&w.delegate(".thumb","touchend",t)),window.onload=function(){var e,a,s,i,t,l=p("#scroller");if(v){if(c=new f("#wrapper",{probeType:3,mouseWheel:!0,click:!0}),document.addEventListener("touchmove",function(e){e.preventDefault()},!1),!m)return void c.on("scroll",function(){l.trigger("scroll")});e=p(window).height(),t=w[0],a=o.height(),s=n.height(),i=n.offset().top,c.on("scroll",function(){var n=-this.y,o=t.className;i-e+a>=n?-1===o.indexOf("fixed-bottom")&&w.addClass("fixed-bottom").removeClass("hide"):i>=n?-1===o.indexOf("hide")&&w.addClass("hide").removeClass("fixed-bottom fixed-top"):i+s-a>=n?-1===o.indexOf("fixed-top")&&w.addClass("fixed-top").removeClass("hide absolute").css("top",""):i+s>=n?(-1===o.indexOf("absolute")&&w.addClass("absolute").removeClass("fixed-top hide"),t.style.top=i+s-a-n+"px"):n>i+s&&-1===o.indexOf("hide")&&w.addClass("hide").removeClass("absolute"),l.trigger("scroll")})}}}),define("js/home/index",["zepto","swiper","lazyload","index"],function(e,a,s){e("js/home/home"),e("js/home/maybe-like")}),define("js/home/home",["zepto","swiper","lazyload","index"],function(e,a,s){function i(){m+=10,b.css({transform:"rotateX("+m+"deg)","-webkit-transform":"rotateX("+m+"deg)","-moz-transform":"rotateX("+m+"deg)"}),m/90%2===1&&(w?(b.addClass("animate"),w=!1):(b.removeClass("animate"),w=!0)),m/90%2===0&&m%360!==0?window.setTimeout(i,3e3):m%360===0?window.setTimeout(i,18e4):d(function(){i()})}var t,n,o,l,r,d,c,p,u,h,f=e("zepto"),g=e("swiper"),v=e("lazyload"),m=0,b=f(".home-header .logo"),w=!0;e("js/home/maybe-like"),v(f("img.lazy")),f(".nav-btn").on("click",function(e){f(this).hasClass("menu-open")||(f(".mobile-wrap").addClass("menu-open"),f(".overlay").addClass("show"),f(".side-nav").addClass("on"),f("body").css({height:f(window).height(),width:"100%",overflow:"hidden"})),e.stopPropagation()}),f(".mobile-wrap").on("click",function(){f(this).hasClass("menu-open")&&(f(".mobile-wrap").removeClass("menu-open"),f(".overlay").removeClass("show"),f(".sub-nav").removeClass("show"),f(".side-nav").removeClass("on"),f("body").css({height:"auto",overflow:"auto"}))}),f(".side-nav").on("click","li",function(){f(this).find(".sub-nav").size()>0&&(f(".sub-nav").removeClass("show"),f(this).find(".sub-nav").addClass("show"))}),f(".sub-nav").each(function(){f(this).find("li").eq(0).on("click",function(e){f(".sub-nav").removeClass("show"),e.stopPropagation()})}),f(".sub-nav").on("mouseenter","li",function(){0!==f(this).index()&&f(this).addClass("current").siblings().removeClass("current")}),f(".banner-swiper").find("li").size()>1&&(t=new g(".banner-swiper",{loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!1,paginationClickable:!0,slideElement:"li",pagination:".banner-top .pagination-inner"})),o=new g(".brands-swiper",{grabCursor:!0,slidesPerView:"auto",wrapperClass:"brands-list",slideElement:"li"}),n=new g(".recommend-swiper",{grabCursor:!0,slidesPerView:"auto",wrapperClass:"recommend-list",slideElement:"li"}),f(".trend-topic-swiper").find("li").size()>1&&(l=new g(".trend-topic-swiper",{loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!1,paginationClickable:!0,slideElement:"li",pagination:".trend-topic-content .pagination-inner"})),f(".category-swiper").each(function(e,a){u="category-swiper"+e,f(this).addClass(u),f("."+u).find(".swiper-slide").size()>1&&(r=new g("."+u,{loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!1,paginationClickable:!0,slideElement:"li",pagination:"."+u+" .pagination-inner"}))}),f(".header-download").on("click",".close-btn",function(){f(this).parent().remove()}),d=function(){var e=null,a=["webkit","moz","ms"];for(p=0;p<a.length;p++)c=a[p]+"RequestAnimationFrame",window[c]&&(h=!0,e=c);return h?function(a){window[e](a)}:function(e){window.setTimeout(e,67)}}(),i()}),define("js/home/maybe-like",["zepto","lazyload"],function(e,a,s){var i,t,n,o,l=e("zepto"),r=e("js/plugin/tip"),d=e("lazyload"),c=l(window).height(),p=l("#load-more").height(),u=l("#goods-list"),h=!1,f=0,g=l(".mobile-wrap").hasClass("boys-wrap")?"1,3":"2,3",v=l(".mobile-wrap").hasClass("kids-wrap")?!0:!1,m=l(".mobile-wrap").hasClass("lifestyle-wrap")?!0:!1,b=l("#maybe-like-nav");t=v?"/product/recom/maylikekids":m?"/product/recom/maylikelife":"/product/recom/maylike?gender="+g,n=b.children(".focus"),l("#maybe-like-nav").delegate("li","touchstart",function(){var e,a=l(this),s=l(".goods-list");a.hasClass("focus")||(o=a.index(),a.addClass("focus"),n.removeClass("focus"),s.not(".hide").addClass("hide"),e=s.eq(o),e.removeClass("hide"),n=a,l(document).trigger("scroll"))}),l(window).scroll(function(){if(l(window).scrollTop()+c>=l(document).height()-p){if(h)return;h=!0,i=u.children(".good-info").length,l.ajax({type:"GET",url:t,data:{page:f+1},success:function(e){return" "===e?void(h=!0):(u.append(e),d(l(".good-info").find("img.lazy")),h=!1,void f++)},error:function(){r.show("网络断开连接了~"),h=!1}})}})}),define("js/product/index",["zepto","swiper","lazyload","index"],function(e,a,s){e("js/product/newsale/newarrival"),e("js/product/newsale/discount"),e("js/product/list"),e("js/product/detail/detail")}),define("js/product/newsale/newarrival",["zepto","swiper","lazyload","index"],function(e,a,s){function i(e){var a,s,i,t,r,c,p={};if(e){for(s in b)b.hasOwnProperty(s)&&(b[s].reload=!0);switch(m.children(".active").removeClass("active"),n.addClass("active"),e.type){case"gender":a={gender:e.id};break;case"brand":a={brand:e.id};break;case"msort":a={msort:e.id};break;case"color":a={color:e.id};break;case"size":a={size:e.id};break;case"price":a={price:e.id};break;case"discount":a={discount:e.id};break;case"limit":a={limit:e.id};break;case"channel":a={channel:e.id};break;case"p_d":a={p_d:e.id}}l.extend(v,a)}if(!o){if(n.hasClass("today")?(t="today",r=1):n.hasClass("week")?(t="week",r=2):n.hasClass("sale")&&(t="sale",r=3),i=b[t],c=i.page+1,i.reload)c=1;else if(i.end)return;l.extend(p,v,{dayLimit:r,page:c}),o=!0,l.ajax({type:"GET",url:"/product/newsale/selectNewSale",data:p,success:function(e){var a,s='<p class="no-result">未找到相关搜索结果</p>';switch(t){case"today":a=u;break;case"week":a=h;break;case"sale":a=f}" "===e?(i.end=!0,i.reload&&a.html(s)):(i.reload?a.html(e):a.append(e),d(a.find(".lazy"))),i.reload=!1,i.page=c,o=!1}})}}var t,n,o,l=e("zepto"),r=e("swiper"),d=e("lazyload"),c=e("js/plugin/filter"),p=l("#goods-container"),u=l(p.children().get(0)),h=l(p.children().get(1)),f=l(p.children().get(2)),g=l(window).height(),v={gender:l("#gender").val(),brand:l("#brand").val(),msort:l("#msort").val(),color:l("#color").val(),size:l("#size").val(),price:l("#price").val(),discount:l("#discount").val(),limit:l("#limit").val(),channel:l("#channel").val(),p_d:l("#p_d").val()},m=l("#list-nav"),b={today:{reload:!0,page:0,end:!1},week:{reload:!0,page:0,end:!1},sale:{reload:!0,page:0,end:!1}};h.addClass("hide"),f.addClass("hide"),l(".swiper-container .swiper-slide").length>1&&(t=new r(".swiper-container",{lazyLoading:!0,pagination:".swiper-pagination"})),d(l(".lazy")),c.registerCbFn(i),m.delegate("li","touchstart",function(){var e,a,s,t=l(this);if(t.hasClass("filter"))t.hasClass("active")?(c.hideFilter(),n.addClass("active"),t.removeClass("active")):(n=t.siblings(".active"),n.removeClass("active"),t.addClass("active"),c.showFilter());else{if(t.hasClass("today")?a="today":t.hasClass("week")?a="week":t.hasClass("sale")&&(a="sale"),e=b[a],!t.hasClass("active")){if(s=t.siblings(".active"),n=t,s.hasClass("filter"))c.hideFilter();else switch(p.children(".container:not(.hide)").addClass("hide"),a){case"today":u.removeClass("hide");break;case"week":h.removeClass("hide");break;case"sale":f.removeClass("hide")}s.removeClass("active"),t.addClass("active")}e.reload&&i()}}),l(window).scroll(function(){l(window).scrollTop()+g>l(document).height()-.25*p.height()&&void 0!==n&&i()})}),define("js/plugin/filter",["zepto"],function(e,a,s){function i(){r.addClass("hide")}function t(){r.removeClass("hide")}function n(e){o=e}var o,l=e("zepto"),r=l(".filter-mask, .filter-body"),d=r.find(".classify"),c=r.find(".sub-classify");d.children(":first-child").addClass("active"),d.delegate(".classify-item","tap",function(){var e=l(this);e.hasClass("active")||(e.siblings(".active").removeClass("active"),e.addClass("active"))}),r.filter(".filter-mask").tap(function(){i()}),c.delegate("li","tap",function(e){var a,s,t=l(this),n=t.data("id"),r=t.closest(".sub-classify"),d=r.siblings(".shower");e.stopPropagation(),t.hasClass("chosed")||(r.children(".chosed").removeClass("chosed"),t.addClass("chosed"),a=l.trim(t.html()),s=l.trim(d.html()),d.html(s.substring(0,s.indexOf("</span>")+7)+a.substring(0,a.indexOf("<i"))),0===t.index()?d.addClass("default"):d.removeClass("default"),o&&o({type:r.data("type"),id:n}),i())}),a.showFilter=t,a.hideFilter=i,a.registerCbFn=n}),define("js/product/newsale/discount",["zepto","swiper","lazyload","index"],function(e,a,s){function i(e){var a,s,i,t,r,c={};if(e){for(s in b)b.hasOwnProperty(s)&&(b[s].reload=!0);switch(m.children(".active").removeClass("active"),n.addClass("active"),e.type){case"gender":a={gender:e.id};break;case"brand":a={brand:e.id};break;case"msort":a={msort:e.id};break;case"color":a={color:e.id};break;case"size":a={size:e.id};break;case"price":a={price:e.id};break;case"discount":a={discount:e.id}}l.extend(v,a)}if(!o){if(n.hasClass("new")?t="newest":n.hasClass("price")?t="price":n.hasClass("discount")&&(t="discount"),i=b[t],r=i.page+1,i.reload)r=1;else if(i.end)return;l.extend(c,v,{type:t,order:i.order,page:r}),o=!0,l.ajax({type:"GET",url:"/product/newsale/selectNewSale",data:c,success:function(e){var a,s='<p class="no-result">未找到相关搜索结果</p>';switch(t){case"newest":a=u;break;case"price":a=h;break;case"discount":a=f}" "===e?(i.end=!0,i.reload&&a.html(s)):(i.reload?a.html(e):a.append(e),d(a.find(".lazy"))),i.reload=!1,i.page=r,o=!1}})}}var t,n,o,l=e("zepto"),r=e("swiper"),d=e("lazyload"),c=e("js/plugin/filter"),p=l("#goods-container"),u=l(p.children().get(0)),h=l(p.children().get(1)),f=l(p.children().get(2)),g=l(window).height(),v={gender:l("#gender").val(),brand:l("#brand").val(),msort:l("#msort").val(),color:l("#color").val(),size:l("#size").val(),price:l("#price").val(),discount:l("#discount").val()},m=l("#list-nav"),b={newest:{order:1,reload:!0,page:0,end:!1},price:{order:0,reload:!0,page:0,end:!1},discount:{order:0,reload:!0,page:0,end:!1}};l(".swiper-container .swiper-slide").length>1&&(t=new r(".swiper-container",{lazyLoading:!0,pagination:".swiper-pagination"})),d(l(".lazy")),c.registerCbFn(i),m.delegate("li","touchstart",function(){var e,a,s,t=l(this);if(t.hasClass("filter"))t.hasClass("active")?(c.hideFilter(),n.addClass("active"),t.removeClass("active")):(n=t.siblings(".active"),n.removeClass("active"),t.addClass("active"),c.showFilter());else{if(t.hasClass("new")?a="newest":t.hasClass("price")?a="price":t.hasClass("discount")&&(a="discount"),e=b[a],t.hasClass("active")){if(t.hasClass("new"))return;(t.hasClass("price")||t.hasClass("discount"))&&(t.find(".icon > .iconfont").toggleClass("cur"),n=t,e.reload=!0,e.order=0===e.order?1:0)}else{if(s=t.siblings(".active"),n=t,s.hasClass("filter"))c.hideFilter();else switch(p.children(".container:not(.hide)").addClass("hide"),a){case"newest":u.removeClass("hide");break;case"price":h.removeClass("hide");break;case"discount":f.removeClass("hide")}s.removeClass("active"),t.addClass("active")}e.reload&&i()}}),l(window).scroll(function(){l(window).scrollTop()+g>l(document).height()-.25*p.height()&&void 0!==n&&i()})}),define("js/product/list",["zepto","lazyload"],function(e,a,s){function i(e){var a,s,i,r,d,c={};if(e){for(s in b)b.hasOwnProperty(s)&&(b[s].reload=!0);switch(m.children(".active").removeClass("active"),t.addClass("active"),e.type){case"gender":a={gender:e.id};break;case"brand":a={brand:e.id};break;case"msort":a={msort:e.id};break;case"color":a={color:e.id};break;case"size":a={size:e.id};break;case"price":a={price:e.id};break;case"discount":a={discount:e.id}}o.extend(v,a)}if(!n){if(t.hasClass("new")?r="newest":t.hasClass("price")?r="price":t.hasClass("discount")&&(r="discount"),i=b[r],d=i.page+1,i.reload)d=1;else if(i.end)return;o.extend(c,v,{type:r,order:i.order,page:d}),n=!0,o.ajax({type:"GET",url:"/product/list/search",data:c,success:function(e){var a,s='<p class="no-result">未找到相关搜索结果</p>';switch(r){case"newest":a=u;break;case"price":a=h;break;case"discount":a=f}" "===e?(i.end=!0,i.reload&&a.html(s)):(i.reload?a.html(e):a.append(e),l(a.find(".lazy"))),i.reload=!1,i.page=d,n=!1}})}}var t,n,o=e("zepto"),l=e("lazyload"),r=o("#brand-header"),d=o("#intro-box"),c=e("js/plugin/filter"),p=o("#goods-container"),u=p.children(".new-goods"),h=p.children(".price-goods"),f=p.children(".discount-goods"),g=o(window).height(),v={gender:o("#gender").val(),brand:o("#brand").val(),msort:o("#msort").val(),color:o("#color").val(),size:o("#size").val(),price:o("#price").val(),discount:o("#discount").val()},m=o("#list-nav"),b={newest:{order:1,reload:!0,page:0,end:!1},price:{order:0,reload:!0,page:0,end:!1},discount:{order:0,reload:!0,page:0,end:!1}};l(o(".lazy")),c.registerCbFn(i),m.delegate("li","tap",function(){var e,a,s,n=o(this);if(n.hasClass("filter"))n.hasClass("active")?(c.hideFilter(),t.addClass("active"),n.removeClass("active")):(t=n.siblings(".active"),t.removeClass("active"),n.addClass("active"),c.showFilter());else{if(n.hasClass("new")?a="newest":n.hasClass("price")?a="price":n.hasClass("discount")&&(a="discount"),e=b[a],n.hasClass("active")){if(n.hasClass("new"))return;(n.hasClass("price")||n.hasClass("discount"))&&(n.find(".icon > .iconfont").toggleClass("cur"),t=n,e.reload=!0,e.order=0===e.order?1:0)}else{if(s=n.siblings(".active"),t=n,s.hasClass("filter"))c.hideFilter();else switch(p.children(".container:not(.hide)").addClass("hide"),a){case"newest":u.removeClass("hide");break;case"price":h.removeClass("hide");break;case"discount":f.removeClass("hide")}s.removeClass("active"),n.addClass("active")}e.reload&&i()}}),o(window).scroll(function(){o(window).scrollTop()+g>o(document).height()-.25*p.height()&&i()}),r.children(".btn-intro").bind("tap",function(){d.removeClass("hide")}),o(".close-intro, .brand-intro-box").tap(function(){d.addClass("hide")}),o("#brand-intro").tap(function(e){e.stopPropagation()}),r.children(".btn-col").bind("tap",function(){o(this).toggleClass("coled")})}),define("js/product/detail/detail",["zepto","swiper","lazyload","index"],function(e,a,s){var i,t=e("zepto"),n=e("swiper"),o=e("lazyload");o(t("img.lazy")),i=new n(".banner-swiper",{loop:!0,pagination:".banner-top .pagination-inner",slideElement:"div",nextButton:".swiper-button-next",prevButton:".swiper-button-prev"})}),define("js/index/index",["zepto"],function(e,a,s){e("js/index/search"),e("js/index/channel")}),define("js/index/search",["zepto"],function(e,a,s){var i=e("zepto"),t=i("#search-input input"),n=i("#search-input .clear-input"),o=i(".history");i("#clear-history").bind("tap",function(){i.ajax({type:"POST",url:"/search/clearHistory",success:function(e){200===e.code&&o.html("")}})}),t.bind("input",function(){""===t.val()?n.addClass("hide"):n.removeClass("hide")}),n.bind("tap",function(){t.val("").trigger("input")})}),define("js/index/channel",[],function(e,a,s){}); |
static/dist/myohobuy/0.0.2/lib.js
0 → 100644
This diff could not be displayed because it is too large.
No preview for this file type
1 | +<?xml version="1.0" standalone="no"?> | ||
2 | +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > | ||
3 | +<svg xmlns="http://www.w3.org/2000/svg"> | ||
4 | +<metadata> | ||
5 | +Created by FontForge 20120731 at Fri Oct 23 16:38:57 2015 | ||
6 | + By Ads | ||
7 | +</metadata> | ||
8 | +<defs> | ||
9 | +<font id="iconfont" horiz-adv-x="1024" > | ||
10 | + <font-face | ||
11 | + font-family="iconfont" | ||
12 | + font-weight="500" | ||
13 | + font-stretch="normal" | ||
14 | + units-per-em="1024" | ||
15 | + panose-1="2 0 6 3 0 0 0 0 0 0" | ||
16 | + ascent="812" | ||
17 | + descent="-212" | ||
18 | + x-height="792" | ||
19 | + bbox="-0.75 -224 3943 812.871" | ||
20 | + underline-thickness="50" | ||
21 | + underline-position="-100" | ||
22 | + unicode-range="U+0078-E628" | ||
23 | + /> | ||
24 | +<missing-glyph horiz-adv-x="374" | ||
25 | +d="M34 0v682h272v-682h-272zM68 34h204v614h-204v-614z" /> | ||
26 | + <glyph glyph-name=".notdef" horiz-adv-x="374" | ||
27 | +d="M34 0v682h272v-682h-272zM68 34h204v614h-204v-614z" /> | ||
28 | + <glyph glyph-name=".null" horiz-adv-x="0" | ||
29 | + /> | ||
30 | + <glyph glyph-name="nonmarkingreturn" horiz-adv-x="341" | ||
31 | + /> | ||
32 | + <glyph glyph-name="x" unicode="x" horiz-adv-x="1001" | ||
33 | +d="M281 543q-27 -1 -53 -1h-83q-18 0 -36.5 -6t-32.5 -18.5t-23 -32t-9 -45.5v-76h912v41q0 16 -0.5 30t-0.5 18q0 13 -5 29t-17 29.5t-31.5 22.5t-49.5 9h-133v-97h-438v97zM955 310v-52q0 -23 0.5 -52t0.5 -58t-10.5 -47.5t-26 -30t-33 -16t-31.5 -4.5q-14 -1 -29.5 -0.5 | ||
34 | +t-29.5 0.5h-32l-45 128h-439l-44 -128h-29h-34q-20 0 -45 1q-25 0 -41 9.5t-25.5 23t-13.5 29.5t-4 30v167h911zM163 247q-12 0 -21 -8.5t-9 -21.5t9 -21.5t21 -8.5q13 0 22 8.5t9 21.5t-9 21.5t-22 8.5zM316 123q-8 -26 -14 -48q-5 -19 -10.5 -37t-7.5 -25t-3 -15t1 -14.5 | ||
35 | +t9.5 -10.5t21.5 -4h37h67h81h80h64h36q23 0 34 12t2 38q-5 13 -9.5 30.5t-9.5 34.5q-5 19 -11 39h-368zM336 498v228q0 11 2.5 23t10 21.5t20.5 15.5t34 6h188q31 0 51.5 -14.5t20.5 -52.5v-227h-327z" /> | ||
36 | + <glyph glyph-name="uniE600" unicode="" horiz-adv-x="1463" | ||
37 | +d="M798 -160q0 -46 25 -58t61 16l537 420q36 28 36 68t-36 68l-537 424q-36 29 -61 16.5t-25 -57.5v-238q-138 0 -252.5 -24.5t-192 -63.5t-137.5 -94t-94.5 -109t-57.5 -117t-31.5 -109.5t-11 -94t-1.5 -63.5t2 -25q47 62 87 104t90 78t103.5 57.5t127 36.5t161.5 21t207 6 | ||
38 | +v-262z" /> | ||
39 | + <glyph glyph-name="uniE601" unicode="" | ||
40 | +d="M281 372q-9 -6 -16.5 -14.5t-11.5 -18t-4 -18.5v-7v-483h1q4 -15 13.5 -28t24 -20t30.5 -7h582q28 0 48.5 20t20.5 49t-20.5 49t-48.5 20h41q35 0 59 24.5t24 58.5t-24 58.5t-59 24.5q35 0 59 24t24 59q0 16 -6.5 31.5t-17.5 26.5t-26.5 17.5t-32.5 6.5h-48q21 0 38 10.5 | ||
41 | +t27.5 27.5t10.5 38v-13q0 31 -22.5 54t-53.5 24q-125 6 -259 9q40 148 16 278q-4 25 -13.5 44.5t-22 31.5t-27 19.5t-29.5 8t-29.5 -2.5t-27.5 -12t-23 -21t-15.5 -30t-5.5 -38q-3 -19 -4.5 -36.5t-2.5 -28.5v-22q-1 -11 -2 -18.5t-2 -16t-3 -16.5t-5.5 -18t-8.5 -23 | ||
42 | +q-24 -60 -133 -115q-4 -1 -7 -2.5t-6 -3.5l-2 -1v0zM60 356q-25 0 -42.5 -17.5t-17.5 -42.5v-405q0 -25 17.5 -42.5t42.5 -17.5h134v525h-134z" /> | ||
43 | + <glyph glyph-name="uniE602" unicode="" horiz-adv-x="1323" | ||
44 | +d="M643 472q0 -68 -47.5 -116t-113.5 -48q0 -68 47 -116t113.5 -48t113.5 48t47 116t-47 116t-113 48zM643 800q-68 0 -139.5 -21.5t-133 -57t-119 -80.5t-102.5 -93t-79 -94t-52 -84t-18 -62q0 -28 25 -75t68 -102t105 -111t131 -101.5t152 -74.5t161.5 -29t161.5 29 | ||
45 | +t152 74.5t131 101.5t105 111t68 102t25 75t-25 75t-68 101.5t-105 110.5t-131 102t-152 74.5t-161 28.5zM643 -21q-88 0 -162 44t-117 120t-43 165q0 66 25.5 127t68.5 105t102.5 70t125.5 26q131 0 225 -94q94 -99 96 -234q0 -30 -5.5 -59t-15 -55.5t-23.5 -51.5t-32 -46 | ||
46 | +t-38.5 -39.5t-44.5 -32.5t-50 -24t-54.5 -15.5t-57.5 -5.5z" /> | ||
47 | + <glyph glyph-name="uniE603" unicode="" | ||
48 | +d="M512 286v343h85v-426h-81v-2h-256v85h252zM512 -224q139 0 257 68.5t186.5 186.5t68.5 257t-68.5 257t-186.5 186.5t-257 68.5t-257 -68.5t-186.5 -186.5t-68.5 -257t68.5 -257t186.5 -186.5t257 -68.5z" /> | ||
49 | + <glyph glyph-name="uniE604" unicode="" | ||
50 | +d="M774 324q6 -9 9.5 -19t2.5 -20.5t-5.5 -20.5t-12.5 -18l-1 -1l-427 -428q-18 -17 -42.5 -17t-41.5 17q-12 12 -16 27t0 30.5t15 26.5l387 387l-387 387q-17 17 -17 41.5t17.5 42t42 17.5t42.5 -17l427 -428q1 0 1 -1q2 -1 3.5 -2.5t2.5 -3.5z" /> | ||
51 | + <glyph glyph-name="uniE605" unicode="" | ||
52 | +d="M707 748q-55 0 -105 -20.5t-90 -56.5q-40 36 -90 56.5t-105 20.5q-34 0 -67 -8t-62 -23t-54.5 -35.5t-45.5 -46.5t-34.5 -55.5t-22 -63t-7.5 -68.5q0 -110 69 -194l2 -2l344 -391q30 -33 73 -33t73 33l344 391q0 1 1 2h1q22 27 37.5 58.5t23.5 66t8 69.5q0 49 -14.5 94.5 | ||
53 | +t-42 82.5t-63.5 64.5t-80.5 43t-92.5 15.5z" /> | ||
54 | + <glyph glyph-name="uniE606" unicode="" horiz-adv-x="1000" | ||
55 | +d="M109 415q19 0 35.5 -7t28.5 -19t19.5 -29t7.5 -35q0 -25 -12.5 -45.5t-33 -32.5t-45.5 -12q-37 0 -63.5 26.5t-26.5 63.5t26.5 63.5t63.5 26.5zM515.5 415q37.5 0 63.5 -26.5t26 -63.5t-26 -63.5t-63.5 -26.5t-64 26.5t-26.5 63.5t26.5 63.5t64 26.5zM921 415 | ||
56 | +q37 0 63.5 -26.5t26.5 -63.5t-26.5 -63.5t-63.5 -26.5t-63.5 26.5t-26.5 63.5t26.5 63.5t63.5 26.5z" /> | ||
57 | + <glyph glyph-name="uniE607" unicode="" horiz-adv-x="1643" | ||
58 | +d="M547 190h-1l45 -46l248 239l-45 46l-201 -194l-195 201l-46 -44z" /> | ||
59 | + <glyph glyph-name="uniE608" unicode="" horiz-adv-x="1821" | ||
60 | +d="M930 135q-14 -13 -33.5 -13t-33.5 13l-252 242q-14 13 -14 32t14 32t34 13t34 -13l251 -242q6 -5 9.5 -11.5t4.5 -13.5t0 -14t-4.5 -13.5t-9.5 -11.5zM360 135q-14 13 -14 32t14 32l251 242q14 13 34 13t34 -13q6 -6 9.5 -15t3.5 -17.5t-3.5 -17t-9.5 -14.5l-252 -242 | ||
61 | +q-14 -13 -33.5 -13t-33.5 13z" /> | ||
62 | + <glyph glyph-name="uniE609" unicode="" horiz-adv-x="1821" | ||
63 | +d="M930 377l-251 -242q-14 -13 -34 -13t-34 13q-9 9 -12 20.5t0 23.5t12 20l252 242q14 13 33.5 13t33.5 -13t14 -32t-14 -32zM427 441l252 -242q9 -8 12 -20t0 -23.5t-12 -20.5q-14 -13 -34 -13t-34 13l-251 242q-14 13 -14 32t14 32q6 7 15 10.5t18 3.5t18 -3.5t16 -10.5z | ||
64 | +" /> | ||
65 | + <glyph glyph-name="uniE60A" unicode="" | ||
66 | +d="M1024 288q0 -139 -68.5 -257t-186.5 -186.5t-257 -68.5t-257 68.5t-186.5 186.5t-68.5 257t68.5 257t186.5 186.5t257 68.5t257 -68.5t186.5 -186.5t68.5 -257zM801 498l-365 -366l-156 156l-37 -37l193 -193l403 403z" /> | ||
67 | + <glyph glyph-name="uniE60B" unicode="" horiz-adv-x="1344" | ||
68 | +d="M1280 236h-1216q-27 0 -45.5 18.5t-18.5 45.5t18.5 45.5t45.5 18.5h1216q27 0 45.5 -18.5t18.5 -45.5t-18.5 -45.5t-45.5 -18.5zM1280 -212h-1216q-27 0 -45.5 18.5t-18.5 45.5t18.5 45.5t45.5 18.5h1216q27 0 45.5 -18.5t18.5 -45.5t-18.5 -45.5t-45.5 -18.5zM1280 684 | ||
69 | +h-1216q-27 0 -45.5 18.5t-18.5 45.5t18.5 45.5t45.5 18.5h1216q27 0 45.5 -18.5t18.5 -45.5t-18.5 -45.5t-45.5 -18.5z" /> | ||
70 | + <glyph glyph-name="uniE60C" unicode="" | ||
71 | +d="M1024 300q0 -139 -68.5 -257t-186.5 -186.5t-257 -68.5t-257 68.5t-186.5 186.5t-68.5 257t68.5 257t186.5 186.5t257 68.5t257 -68.5t186.5 -186.5t68.5 -257z" /> | ||
72 | + <glyph glyph-name="uniE60D" unicode="" horiz-adv-x="1685" | ||
73 | +d="M1229 -77l289 -135l58 124l-281 131q-7 -18 -18 -39.5t-23 -41.5t-25 -39zM944 475v-134h137v258q42 47 62 81l-118 69q-2 -4 -8 -12t-24.5 -30.5t-41 -45.5t-60.5 -54.5t-81 -59.5l75 -114q6 4 12.5 8t12.5 8.5t11.5 8.5t11.5 8t11 9zM1524 19v304h-605v-304h137v167 | ||
74 | +h332v-167h136zM1283 169h-137v-66q0 -26 -13.5 -48.5t-37 -40t-52 -32t-63 -25.5t-64 -19t-60.5 -14l74 -124q55 14 103 30.5t95.5 43t80.5 58t53.5 75.5t20.5 96v66zM1088 570l31 -133q42 9 85 21q19 -49 59 -78q49 -36 120 -36q26 0 49.5 4t42.5 10q69 21 133 78l-67 125 | ||
75 | +q-7 -7 -17 -16t-24 -20.5t-31 -21t-34 -14.5q-29 -9 -53.5 -8.5t-37.5 9.5q-4 3 -8 9q147 51 240 103l-81 111q-74 -38 -173 -74v85h-137v-129q-50 -14 -97 -25zM755 477v137h-348q11 42 19 84l-134 26q-4 -19 -8 -37.5t-9.5 -36.5t-10.5 -36h-200v-137h142 | ||
76 | +q-79 -149 -206 -260l90 -103q43 38 85 83v-389h137v165h260v-24h-124l48 -137h83q54 0 92 38t38 92v490h-373q11 22 21 45h398zM312 134h260v-24h-260v24zM312 295h260v-24h-260v24zM1683 732q0 -33 -22.5 -56t-55.5 -23q-22 0 -40 10.5t-28.5 28.5t-10.5 40q0 16 6 30.5 | ||
77 | +t16.5 25t25.5 16.5t31 6q33 0 55.5 -22.5t22.5 -55.5zM1545 732q0 -10 3 -20t8.5 -17.5t13 -13.5t16.5 -9t19 -3q25 0 41.5 18t16.5 44q0 27 -16.5 45.5t-42.5 18.5q-25 0 -42 -18.5t-17 -44.5zM1592 691h-17v79q17 2 29 2q18 0 26 -6q2 -1 3.5 -3t2.5 -4t1.5 -4.5t0.5 -5.5 | ||
78 | +q0 -7 -4.5 -11.5t-11.5 -7.5v-1q10 -3 14 -19q1 -8 2.5 -12t3.5 -7h-19q-2 3 -6 19q-2 12 -16 12h-9v-31zM1593 735h8q18 0 18 12q0 5 -4 8.5t-12 3.5q-4 0 -6 -0.5t-4 -0.5v-23z" /> | ||
79 | + <glyph glyph-name="uniE60E" unicode="" horiz-adv-x="3958" | ||
80 | +d="M611 639h-177l-150 -222l-95 222h-178l168 -395v-2l-31 -243h156l30 231zM699 481q-100 0 -179.5 -72.5t-92.5 -175.5q-13 -105 51 -178q61 -68 157 -68q99 0 178.5 72.5t92.5 175.5q13 104 -51 177q-60 69 -156 69zM759 233q-2 -16 -8.5 -31.5t-16.5 -27.5t-22.5 -21.5 | ||
81 | +t-27 -14.5t-29.5 -5q-12 0 -23 3t-20.5 9t-16.5 15q-13 14 -18.5 33.5t-2.5 41.5q2 16 8.5 31t16.5 27.5t22.5 21.5t27.5 14.5t30 5.5q36 0 59 -27q27 -30 21 -75zM1656 481q-65 0 -124.5 -33t-99 -90.5t-48.5 -124.5q-13 -105 51 -178q20 -22 44.5 -37t53 -23t59.5 -8 | ||
82 | +q99 0 178.5 72.5t92.5 175.5q3 25 1.5 49.5t-8 47t-17.5 43t-27 37.5q-29 34 -69.5 51.5t-86.5 17.5zM1717 233q-4 -27 -19 -50t-38 -36.5t-48 -13.5q-18 0 -33.5 7t-26.5 20q-13 14 -18.5 33.5t-2.5 41.5q5 41 36 70.5t69 29.5q8 0 16.5 -2t16 -5.5t14.5 -8.5t13 -11 | ||
83 | +q26 -30 21 -75zM1332 418q-44 50 -114 50q-13 0 -25.5 -1.5t-24.5 -5t-24 -9t-23 -11.5l-10 -6l26 204h-156l-80 -640h155l37 288q3 24 22 41t43 17q12 0 22.5 -4.5t17.5 -12.5q16 -18 12 -42l-36 -287h156l37 298q2 13 1.5 26.5t-3 26.5t-7 25t-11 23t-15.5 20zM2949 460 | ||
84 | +l-37 -288q-3 -24 -22 -41t-44 -17q-24 0 -39 17q-5 6 -8.5 12.5t-4.5 14t0 15.5l37 287h-156l-38 -298q-9 -71 36 -121q21 -25 50.5 -37.5t63.5 -12.5q25 0 49.5 7t47.5 20l9 6l-3 -25h156l58 461h-155zM1951 639l-55 -432h156l55 432h-156zM1970 168q-18 0 -36 -7.5 | ||
85 | +t-31.5 -19.5t-22.5 -28.5t-12 -34.5q-4 -37 19 -63q11 -13 26 -19.5t33 -6.5q37 0 67 26.5t34 63.5q5 37 -18 63q-4 5 -9.5 9t-11 7t-12 5.5t-13 3.5t-13.5 1zM2608 178q4 34 -3.5 64.5t-26.5 55t-47 39.5l-8 5l8 5q19 10 35.5 25t28.5 32.5t19.5 37t10.5 40.5q8 63 -30 108 | ||
86 | +q-37 44 -97 48l-6 1h-314l-81 -640h317q72 3 128.5 55t65.5 124zM2451 200q-3 -27 -25 -46.5t-50 -19.5h-106l17 134h107q27 -1 43.5 -20.5t13.5 -47.5zM2483 447q-2 -16 -12 -30t-25 -22.5t-31 -8.5h-113l15 124h112q25 0 41.5 -18.5t12.5 -44.5zM3132 -211q65 0 124 37.5 | ||
87 | +t89 99.5l264 534h-156l-127 -258l-63 258h-156l113 -471l-7 -14q-8 -18 -25 -29t-36 -11q-5 0 -10 1t-10 3l-29 11l-67 -139l29 -10q31 -12 67 -12zM3943 646q0 -16 -3 -31.5t-9 -29.5t-14.5 -26.5t-19 -23t-23 -19t-26.5 -14.5t-29.5 -9t-31.5 -3q-32 0 -61 12t-50 33 | ||
88 | +t-33 50t-12 61q0 43 20.5 79t57 56.5t79.5 20.5q65 0 110 -45t45 -111zM3670 646q0 -25 9 -48t24.5 -40t37.5 -26.5t47 -9.5q24 0 46 9.5t37 26t24 39.5t9 48q0 53 -33.5 89.5t-84.5 36.5q-32 0 -59 -17t-42 -45.5t-15 -62.5zM3763 566h-35v155q11 2 16.5 2.5t18 1.5t23.5 1 | ||
89 | +q21 0 32.5 -3t19.5 -9q7 -6 11.5 -14.5t4.5 -19.5q0 -13 -8.5 -22.5t-23.5 -14.5v-2q20 -6 27 -37q2 -9 3.5 -15.5t3 -11t2.5 -7t2 -4.5h-37q-4 5 -12 38q-2 12 -9.5 17.5t-21.5 5.5h-17v-61zM3764 653h17q35 0 35 23t-32 23q-7 0 -12 -0.5t-8 -0.5v-45z" /> | ||
90 | + <glyph glyph-name="uniE60F" unicode="" | ||
91 | +d="M682 74q-108 -89 -249 -89q-53 0 -104.5 14.5t-94.5 39.5t-79.5 61.5t-61.5 79.5t-39.5 94t-14.5 105q0 107 53 197.5t143.5 143.5t197.5 53t197.5 -53t143.5 -143.5t53 -197.5q0 -141 -89 -249l286 -286l-56 -56zM433 64q131 0 223 92t92 222.5t-92 223t-223 92.5 | ||
92 | +t-223 -93q-91 -93 -92 -222q0 -86 42 -158.5t115 -114.5t158 -42z" /> | ||
93 | + <glyph glyph-name="uniE610" unicode="" | ||
94 | +d="M245 300l-9 9l472 472l80 -80l-400 -401l400 -401l-80 -80l-472 472z" /> | ||
95 | + <glyph glyph-name="uniE611" unicode="" | ||
96 | +d="M509 780q-4 -2 -245 -245q-221 -224 -235 -245q-6 -9 -6 -15q0 -35 42 -33q7 0 233 227l225 228l226 -228q105 -106 167 -166.5t65 -60.5q21 -1 31.5 7.5t10.5 25.5q0 12 -32 46q-33 36 -206 212q-241 243 -246 246q-15 8 -30 1zM171 245q-12 -8 -14 -38.5t-2 -188 | ||
97 | +t2 -188t14 -38.5q7 -6 352.5 -6t352.5 6q11 8 13 36q2 30 2 190q0 158 -2 188.5t-13 38.5q-8 7 -21.5 5.5t-21.5 -10.5l-10 -9v-381h-600v381l-10 9q-15 16 -36 9q-4 -2 -6 -4zM398 202l-11 -12v-215l11 -12q6 -8 11 -10.5t14 -2.5q16 0 26 13l10 12v175h128v-175l11 -12 | ||
98 | +q7 -9 16 -12t18.5 0t16.5 12l10 12v215l-20 24h-231z" /> | ||
99 | + <glyph glyph-name="uniE612" unicode="" | ||
100 | +d="M951 -7h-878l439 614z" /> | ||
101 | + <glyph glyph-name="uniE613" unicode="" | ||
102 | +d="M512 -7l-439 614h878z" /> | ||
103 | + <glyph glyph-name="uniE614" unicode="" | ||
104 | +d="M313 -49l349 349l-349 349q-7 7 -7 16.5t6.5 16t16 6.5t16.5 -6l345 -345q16 -15 21 -20q7 -7 7 -17t-7 -17q-4 -4 -25.5 -25t-22.5 -22l-318 -318q-7 -6 -16.5 -6t-16 6.5t-6.5 16t7 16.5z" /> | ||
105 | + <glyph glyph-name="uniE615" unicode="" | ||
106 | +d="M527.5 475q2.5 0 4.5 -1l6 -2q2 -1 3 -3l293 -288q3 -3 5 -6.5t2 -7.5t-1.5 -8t-4.5 -7q-6 -6 -14.5 -6t-14.5 6l-279 273l-278 -273q-7 -6 -15 -6t-14 6t-6 14.5t6 14.5l293 288q2 2 4 3t5 2t5.5 1z" /> | ||
107 | + <glyph glyph-name="uniE616" unicode="" | ||
108 | +d="M527 146q-4 0 -7.5 1.5t-6.5 4.5l-293 288q-6 6 -6 14t6 14.5t14 6.5t15 -6l278 -274l279 274q6 6 14.5 6t14.5 -6.5t5.5 -14.5t-6.5 -14l-293 -288q-5 -6 -14 -6z" /> | ||
109 | + <glyph glyph-name="uniE617" unicode="" horiz-adv-x="1030" | ||
110 | +d="M-195 162zM520 770q-98 0 -187.5 -38t-154 -102.5t-102.5 -154t-38 -187.5q0 -79 24 -152.5t69 -132.5t104 -103.5t132.5 -69t152.5 -24.5q98 0 187.5 38t154 102.5t102.5 154t38 187.5t-38 187.5t-102.5 154t-154 102.5t-187.5 38zM857 485l-339 -451l-328 238 | ||
111 | +q-12 9 -14 23.5t7 26.5q5 8 13.5 11.5t18 2.5t17.5 -6l271 -198l297 396q6 8 14.5 11.5t18 2.5t17.5 -7q12 -9 14 -23.5t-7 -26.5z" /> | ||
112 | + <glyph glyph-name="uniE618" unicode="" | ||
113 | +d="M224 192q-40 0 -68 28t-28 68t28 68t68 28t68 -28t28 -68t-28 -68t-68 -28zM512 192q-40 0 -68 28t-28 68t28 68t68 28t68 -28t28 -68t-28 -68t-68 -28zM800 192q-40 0 -68 28t-28 68t28 68t68 28t68 -28t28 -68t-28 -68t-68 -28z" /> | ||
114 | + <glyph glyph-name="uniE619" unicode="" | ||
115 | +d="M126 225q30 0 50.5 21.5t20.5 52.5q0 33 -20.5 54.5t-51 21.5t-51.5 -21.5t-21 -54.5q0 -45 38 -66q17 -8 35 -8zM512 225q15 0 28.5 5.5t23 15.5t15 24t5.5 29q0 9 -2 18t-5.5 16.5t-8 14t-10.5 11.5t-13.5 9t-15.5 5.5t-17 1.5q-30 0 -51 -21.5t-21 -54.5q0 -45 38 -66 | ||
116 | +q16 -8 34 -8zM899.5 225q30.5 0 51 21.5t20.5 52.5q0 9 -2 18t-5.5 16.5t-8 14t-11 11.5t-13.5 9t-15 5.5t-17 1.5q-20 0 -36.5 -9.5t-26 -27t-9.5 -39.5q0 -31 21 -52.5t51.5 -21.5z" /> | ||
117 | + <glyph glyph-name="uniE61A" unicode="" | ||
118 | +d="M512 -146q-91 0 -173.5 35.5t-142 95t-95 142t-35.5 173.5q0 61 16 118.5t45 106.5t70 90t90 70t106.5 45t118.5 16q91 0 173.5 -35.5t142 -95t95 -142t35.5 -173.5q0 -61 -16 -118.5t-45 -106.5t-70 -90t-90 -70t-106.5 -45t-118.5 -16zM512 682q-104 0 -192 -51 | ||
119 | +t-139 -139t-51 -192t51 -192t139 -139t192 -51t192 51t139 139t51 192t-51 192t-139 139t-192 51zM512 508zM464 508q0 20 14 34t34 14t34 -14t14 -34t-14 -34t-34 -14t-34 14t-14 34zM512 44q-13 0 -22.5 9.5t-9.5 22.5v288q0 13 9.5 22.5t22.5 9.5t22.5 -9.5t9.5 -22.5 | ||
120 | +v-288q0 -13 -9.5 -22.5t-22.5 -9.5z" /> | ||
121 | + <glyph glyph-name="uniE61B" unicode="" | ||
122 | +d="M437 41h-193q-27 2 -41.5 22.5t-17.5 45.5q3 25 17.5 41t41.5 18h193v63l-193 1q-27 2 -41.5 19t-17.5 43q3 25 17.5 41t41.5 18h144l-134 236q-10 12 -19 30.5t-8 40.5q5 28 20 45.5t56 22.5q24 -2 43 -16.5t31 -31.5l152 -278l167 280q12 17 31 30t43 16q15 -1 27.5 -4 | ||
123 | +t22 -10t16 -20t9.5 -34q0 -29 -20 -55l-155 -252h147q26 -2 41 -18t17 -41q-2 -26 -17.5 -44t-41.5 -20l-191 -1v-61h192q26 -2 41 -20t17 -43q-2 -26 -17 -43.5t-41 -19.5l-192 1v-106q-4 -85 -93 -85q-44 0 -68.5 21t-26.5 64v104z" /> | ||
124 | + <glyph glyph-name="uniE61C" unicode="" | ||
125 | +d="M946 -196h-868q-26 0 -44 18t-18 44v868q0 26 18 44t44 18h868q26 0 44 -18t18 -44v-868q0 -26 -18 -44t-44 -18zM946 703q0 13 -9 22t-22 9h-806q-13 0 -22 -9t-9 -22v-806q0 -13 9 -22t22 -9h806q13 0 22 9t9 22v806z" /> | ||
126 | + <glyph glyph-name="uniE61D" unicode="" | ||
127 | +d="M939 -202h-876q-17 0 -31.5 8.5t-23 23t-8.5 31.5v876q0 26 18.5 44.5t44.5 18.5h876q26 0 44.5 -18.5t18.5 -44.5v-876q0 -39 -35 -57q-14 -6 -28 -6zM814 612l-376 -438l-250 188l-63 -126l313 -250l439 501z" /> | ||
128 | + <glyph glyph-name="uniE61E" unicode="" | ||
129 | +d="M224 211l416 410l179 -179l-416 -410zM659 525l-19 19l-333 -333l19 -19zM698 486l-20 20l-332 -333l19 -19zM736 448l-19 19l-333 -333l19 -19zM717 704q14 14 38 14t39 -14l102 -102q6 -6 9.5 -14t4.5 -16.5t0 -17t-4.5 -16.5t-9.5 -13l-64 -58l-173 173zM211 186 | ||
130 | +l167 -167l-148 -51l-70 70zM205 -45l-83 -32l32 83z" /> | ||
131 | + <glyph glyph-name="uniE61F" unicode="" | ||
132 | +d="M512 812q-138 0 -256 -69t-187 -187t-69 -256t69 -256t187 -187t256 -69t256 69t187 187t69 256t-69 256t-187 187t-256 69zM563 44h-102v307h102v-307zM563 454h-102v102h102v-102z" /> | ||
133 | + <glyph glyph-name="uniE620" unicode="" | ||
134 | +d="M938 276h-400v274h-50v-274h-399q-15 0 -29 5.5t-24 15.5t-16 24t-6 29v175q0 31 22 53t53 22h90q-18 21 -29 46t-11 54q0 27 10 47.5t25 30t29.5 15t24.5 6.5l11 1q53 0 100 -15.5t81 -42t56 -50t39 -50.5q17 27 39.5 51t56 50t79.5 41.5t98 15.5h4q2 0 8.5 -1.5 | ||
135 | +t13.5 -3t16 -5.5t16.5 -9t15.5 -13t13.5 -17.5t9 -23.5t3.5 -30q0 -28 -9.5 -52t-25.5 -45h85q31 0 53 -22t22 -53v-175q0 -44 -39 -65q-17 -9 -36 -9zM264 725q-15 0 -26 -2.5t-15.5 -6t-6.5 -7.5t-2 -6v-3q0 -49 66 -100h173q-14 30 -30 52.5t-34 35.5t-33 21t-34.5 11.5 | ||
136 | +t-30 4t-27.5 0.5zM763 723q-13 0 -20 -0.5t-21.5 -1.5t-24.5 -4.5t-24 -9t-25.5 -14.5t-24 -21.5t-24.5 -30.5t-22 -41h177q59 50 59 97v3q0 2 -2 6.5t-7 7.5t-15.5 6t-25.5 3zM488 -224h-349q-15 0 -29 6t-24 16t-16 24t-6 29v375h424v-450zM538 226h400v-375 | ||
137 | +q0 -31 -22 -53t-53 -22h-325v450z" /> | ||
138 | + <glyph glyph-name="uniE621" unicode="" | ||
139 | +d="M160 492v-640q0 -26 19 -45t45 -19h576q26 0 45 19t19 45v640h-704zM352 -84h-64v448h64v-448zM480 -84h-64v448h64v-448zM608 -84h-64v448h64v-448zM736 -84h-64v448h64v-448zM880 684h-208v80q0 20 -14 34t-34 14h-224q-8 0 -15 -2.5t-13 -7t-10.5 -10.5t-7 -13 | ||
140 | +t-2.5 -15v-80h-208q-20 0 -34 -14t-14 -34v-80h832v80q0 6 -1.5 11t-3.5 10t-5.5 9t-7.5 7.5t-9 5.5t-10 3.5t-11 1.5zM608 684h-192v63h192v-63z" /> | ||
141 | + <glyph glyph-name="uniE622" unicode="" horiz-adv-x="1173" | ||
142 | +d="M586 588q-64 150 -188 203q-114 47 -222 -7q-112 -56 -155 -192q-20 -67 -21 -144q0 -41 9 -78.5t24 -66.5t39 -57.5t47 -48.5t55.5 -43t56.5 -38t58.5 -35.5t53.5 -33.5q63 -42 118 -94.5t86.5 -95t39.5 -69.5q4 19 25.5 50t53.5 66t75 74t88 71q21 15 53.5 35.5t58 36 | ||
143 | +t57 38t55 43t47 48t39 56.5t25 66.5t8.5 78.5q0 75 -19.5 138t-52.5 105.5t-76.5 70.5t-91 37.5t-98 1t-96 -34.5t-85.5 -72.5t-67 -108.5z" /> | ||
144 | + <glyph glyph-name="uniE623" unicode="" | ||
145 | +d="M835 576l-60 63l-263 -275v0l-263 275l-60 -63l262 -276l-262 -276l60 -63l263 275v0l263 -275l60 63l-262 276z" /> | ||
146 | + <glyph glyph-name="uniE624" unicode="" horiz-adv-x="1000" | ||
147 | +d="M459 754h22h23h20h22h22v-191v-191h191h191v-109h-191h-191v-191v-190h-109v190v191h-191h-190q-1 37 -1 109h128h127h127v116v150v116z" /> | ||
148 | + <glyph glyph-name="uniE625" unicode="" horiz-adv-x="1000" | ||
149 | +d="M77 372h873v-109h-873v109z" /> | ||
150 | + <glyph glyph-name="uniE626" unicode="" | ||
151 | +d="M866.5 663.5q-97.5 97.5 -228 132t-261.5 0t-228.5 -132t-132 -228.5t0 -261.5t132 -228t228.5 -132t261.5 0t228 132t132 228t0 261.5t-132 228.5zM798 115l-101 -101l-187 186l-186 -186l-101 101l186 186l-186 187l101 101l186 -186l187 186l101 -101l-186 -187z" /> | ||
152 | + <glyph glyph-name="uniE628" unicode="" | ||
153 | +d="M505 776q77 0 148.5 -23.5t129 -67t101 -101.5t67.5 -129.5t24 -147.5q0 -64 -17 -125t-47.5 -112t-74 -94.5t-94.5 -74t-112 -47.5t-125 -17q-95 0 -182 37.5t-150 100.5t-100 150t-37 182t37 182t100 150t150 100t182 37zM505 -104q112 0 206.5 55t149.5 149.5 | ||
154 | +t55 206.5q0 37 -6.5 73.5t-19.5 69.5t-30.5 64t-40.5 57.5t-49.5 49.5t-57.5 40.5t-64 30t-69.5 19t-73.5 6.5q-111 0 -205.5 -55t-149.5 -149.5t-55 -206t55 -206t149.5 -149.5t205.5 -55zM528 138v-59h-58v59h58zM470 564h58v-349h-58v349z" /> | ||
155 | + </font> | ||
156 | +</defs></svg> |
No preview for this file type
No preview for this file type
static/dist/myohobuy/assets/img/app-logo.png
0 → 100644

5.47 KB

1.66 KB

12.6 KB

12.6 KB

1.05 KB

908 Bytes

1.63 KB

999 Bytes

935 Bytes

1.45 KB

821 Bytes

1.72 KB

1.12 KB

1.18 KB

2.63 KB

2.51 KB

2.63 KB

2.63 KB

2.64 KB

2.14 KB

5.2 KB

1.04 KB

1.2 KB

9.08 KB

18.4 KB

1.07 KB

1.33 KB

1.66 KB

1.48 KB

1.13 KB

17.7 KB

2.17 KB

1.32 KB

18 KB

18.7 KB

18.5 KB

5.09 KB

1.35 KB

1.65 KB

2 KB

2.79 KB

1.93 KB

2.11 KB

1.73 KB

2.37 KB
static/dist/myohobuy/assets/img/up-icon.png
0 → 100644

687 Bytes

5.24 KB

6.02 KB

3.41 KB
-
Please register or login to post a comment