Authored by uedxwg

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

@@ -943,7 +943,8 @@ @@ -943,7 +943,8 @@
943 { 943 {
944 name: '', 944 name: '',
945 active: true, 945 active: true,
946 - typeId: 1 946 + typeId: 1,
  947 + url: ''
947 }, 948 },
948 ... 949 ...
949 ] 950 ]
@@ -5,16 +5,16 @@ @@ -5,16 +5,16 @@
5 */ 5 */
6 6
7 var $ = require('jquery'), 7 var $ = require('jquery'),
8 - Hammer = require('yoho.hammer'),  
9 - ellipsis = require('mlellipsis'),  
10 - lazyLoad = require('yoho.lazyload'); 8 + Hammer = require('yoho.hammer'),
  9 + ellipsis = require('mlellipsis'),
  10 + lazyLoad = require('yoho.lazyload');
11 11
12 var tip = require('../plugin/tip'); 12 var tip = require('../plugin/tip');
13 var loading = require('../plugin/loading'); 13 var loading = require('../plugin/loading');
14 14
15 var $loadMoreInfo = $('#load-more-info'); 15 var $loadMoreInfo = $('#load-more-info');
16 var $loading = $(''), 16 var $loading = $(''),
17 - $noMore = $(''); 17 + $noMore = $('');
18 18
19 var searching = false; 19 var searching = false;
20 20
@@ -34,8 +34,8 @@ function setLazyLoadAndMellipsis($infos) { @@ -34,8 +34,8 @@ function setLazyLoadAndMellipsis($infos) {
34 34
35 $infos.each(function() { 35 $infos.each(function() {
36 var $this = $(this), 36 var $this = $(this),
37 - $title = $this.find('.info-title'),  
38 - $text = $this.find('.info-text'); 37 + $title = $this.find('.info-title'),
  38 + $text = $this.find('.info-text');
39 39
40 $title[0].mlellipsis(2); 40 $title[0].mlellipsis(2);
41 $text[0].mlellipsis(2); 41 $text[0].mlellipsis(2);
@@ -57,10 +57,10 @@ function initInfosEvt($container) { @@ -57,10 +57,10 @@ function initInfosEvt($container) {
57 57
58 cHammer.on('tap', function(e) { 58 cHammer.on('tap', function(e) {
59 var $this = $(e.target), 59 var $this = $(e.target),
60 - opt = 'ok',  
61 - $likeBtn,  
62 - $collectBtn,  
63 - $info; 60 + opt = 'ok',
  61 + $likeBtn,
  62 + $collectBtn,
  63 + $info;
64 64
65 $likeBtn = $this.closest('.like-btn'); 65 $likeBtn = $this.closest('.like-btn');
66 if ($likeBtn.length > 0) { 66 if ($likeBtn.length > 0) {
  1 +/**
  2 + * 我的逛
  3 + * @author xuqi<qi.xu@yoho.cn>
  4 + * @date: 2015/11/17
  5 + */
  6 +
  7 +var $ = require('jquery');
  8 +
  9 +var info = require('../guang/info');
  10 +
  11 +info.initInfoEvt($('#info-list'));
@@ -17,27 +17,32 @@ var winH = $(window).height(); @@ -17,27 +17,32 @@ var winH = $(window).height();
17 17
18 var activeType = $navLi.filter('.active').data('type'); //当前active的项的index 18 var activeType = $navLi.filter('.active').data('type'); //当前active的项的index
19 19
20 -var orderPage = {}; 20 +var order = {
  21 + page: 0,
  22 + end: false
  23 +};
21 24
22 var inAjax = false; 25 var inAjax = false;
23 26
24 var loading = require('../plugin/loading'); 27 var loading = require('../plugin/loading');
25 28
26 -var navHammer, orderHammer; 29 +var orderHammer;
27 30
28 //加载订单 31 //加载订单
29 -function getOrders() { 32 +function getOrders(option) {
30 var opt = { 33 var opt = {
31 type: activeType, 34 type: activeType,
32 - page: orderPage[activeType] ? (orderPage[activeType] + 1) : 1 35 + page: order.page + 1
33 }; 36 };
34 37
  38 + var show = option && option.showLoadingMask;
  39 +
35 if (inAjax) { 40 if (inAjax) {
36 return; 41 return;
37 } 42 }
38 43
39 inAjax = true; 44 inAjax = true;
40 - loading.showLoadingMask(); 45 + show && loading.showLoadingMask();
41 46
42 $.ajax({ 47 $.ajax({
43 type: 'GET', 48 type: 'GET',
@@ -46,23 +51,27 @@ function getOrders() { @@ -46,23 +51,27 @@ function getOrders() {
46 success: function(data) { 51 success: function(data) {
47 var num; 52 var num;
48 53
49 - if (data.code === 200) {  
50 - orderPage[opt.type] = opt.page; 54 + if (data !== ' ') {
  55 + order.page = opt.page;
51 56
52 if (opt.page === 1) { 57 if (opt.page === 1) {
53 - $curContainer.html(data.data); 58 + $curContainer.html(data);
54 lazyLoad($curContainer.find('.lazy')); 59 lazyLoad($curContainer.find('.lazy'));
55 } else { 60 } else {
56 num = $curContainer.children('.order').length; 61 num = $curContainer.children('.order').length;
57 - $curContainer.append(data.data); 62 + $curContainer.append(data);
58 63
59 //lazyload 64 //lazyload
60 - lazyLoad($curContainer.children('.order:gt(' + (num - 1) + ') .lazy')); 65 + lazyLoad($curContainer.children('.order:gt(' + (num - 1) + ')').find('.lazy'));
61 } 66 }
  67 +
  68 + window.rePosFooter(); //重新计算底部位置
  69 + } else {
  70 + order.end = true;
62 } 71 }
63 72
64 inAjax = false; 73 inAjax = false;
65 - loading.hideLoadingMask(); 74 + show && loading.hideLoadingMask();
66 } 75 }
67 }); 76 });
68 } 77 }
@@ -83,33 +92,6 @@ lazyLoad(); @@ -83,33 +92,6 @@ lazyLoad();
83 92
84 loading.init($('body')); //满屏loading 93 loading.init($('body')); //满屏loading
85 94
86 -//导航切换  
87 -navHammer = new Hammer(document.getElementById('order-nav'));  
88 -navHammer.on('tap', function(e) {  
89 - var $cur = $(e.target).closest('li'),  
90 - index;  
91 -  
92 - if ($cur.length === 0 || $cur.hasClass('active')) {  
93 - return;  
94 - }  
95 -  
96 - index = $cur.index();  
97 -  
98 - $navLi.filter('.active').removeClass('active');  
99 - $cur.addClass('active');  
100 -  
101 - $curContainer.addClass('hide');  
102 - $curContainer = $orderContainer.children(':eq(' + index + ')').removeClass('hide');  
103 -  
104 - activeType = $cur.data('type');  
105 -  
106 - if (orderPage[activeType]) {  
107 - return;  
108 - } else {  
109 - getOrders();  
110 - }  
111 -});  
112 -  
113 //点击订单区域跳转订单详情页 95 //点击订单区域跳转订单详情页
114 orderHammer = new Hammer(document.getElementById('order-container')); 96 orderHammer = new Hammer(document.getElementById('order-container'));
115 orderHammer.on('tap', function(e) { 97 orderHammer.on('tap', function(e) {
@@ -168,9 +150,13 @@ orderHammer.on('tap', function(e) { @@ -168,9 +150,13 @@ orderHammer.on('tap', function(e) {
168 }); 150 });
169 151
170 $(window).scroll(function() { 152 $(window).scroll(function() {
171 - if ($(window).scrollTop() + winH > 153 + if (order.end === false && $(window).scrollTop() + winH >
172 $(document).height() - 0.25 * $orderContainer.height()) { 154 $(document).height() - 0.25 * $orderContainer.height()) {
173 - getOrders(); 155 +
  156 + //下拉请求时不显示mask
  157 + getOrders({
  158 + noLoadingMask: true
  159 + });
174 } 160 }
175 }); 161 });
176 162
@@ -106,7 +106,14 @@ @@ -106,7 +106,14 @@
106 border-bottom: 1px solid #e0e0e0; 106 border-bottom: 1px solid #e0e0e0;
107 background: #fff; 107 background: #fff;
108 108
109 - > li{ 109 + a {
  110 + display: block;
  111 + height: 100%;
  112 + width: 100%;
  113 + color: #b0b0b0;
  114 + }
  115 +
  116 + > li {
110 float: left; 117 float: left;
111 height: 90rem / $pxConvertRem; 118 height: 90rem / $pxConvertRem;
112 width: 25%; 119 width: 25%;
@@ -115,7 +122,7 @@ @@ -115,7 +122,7 @@
115 font-size: 26rem / $pxConvertRem; 122 font-size: 26rem / $pxConvertRem;
116 text-align: center; 123 text-align: center;
117 124
118 - &.active { 125 + &.active a {
119 color: #000; 126 color: #000;
120 } 127 }
121 } 128 }
@@ -4,7 +4,7 @@ @@ -4,7 +4,7 @@
4 <ul id="order-nav" class="order-nav clearfix"> 4 <ul id="order-nav" class="order-nav clearfix">
5 {{#each navs}} 5 {{#each navs}}
6 <li {{#if active}}class="active"{{/if}} data-type="{{typeId}}"> 6 <li {{#if active}}class="active"{{/if}} data-type="{{typeId}}">
7 - {{name}} 7 + <a href="{{url}}">{{name}}</a>
8 </li> 8 </li>
9 {{/each}} 9 {{/each}}
10 </ul> 10 </ul>
@@ -454,7 +454,7 @@ class HomeController extends AbstractAction @@ -454,7 +454,7 @@ class HomeController extends AbstractAction
454 } 454 }
455 455
456 //ajax请求订单页面 456 //ajax请求订单页面
457 - public function getOrderAction() { 457 + public function getOrdersAction() {
458 //判断是不是ajax请求 458 //判断是不是ajax请求
459 if (!$this->isAjax()) { 459 if (!$this->isAjax()) {
460 $this->error(); 460 $this->error();