Authored by xuqi

order load

... ... @@ -13,32 +13,85 @@ var $navLi = $('#order-nav > li'),
var $curContainer = $orderContainer.children('.orders').first();//保存当前显示的order-container
var winH = $(window).height();
var activeIndex = 0; //当前active的项的index
var orderPage = [1, 0, 0, 0];
var loading = false;
var navHammer, orderHammer;
//加载订单
function getOrders() {
var opt = {
type: activeIndex + 1,
page: orderPage[activeIndex] + 1
},
num;
if (loading) {
return;
}
$.ajax({
type: 'GET',
url: '/home/getOrders',
data: opt,
success: function(data) {
if (data.code === 200) {
orderPage[opt.type] = opt.page;
if (opt.page === 1) {
$curContainer.html(data.data);
lazyLoad($curContainer.find('.lazy'));
} else {
num = $curContainer.children('.order').length;
$curContainer.append(data.data);
//lazyload
lazyLoad($curContainer.children('.order:gt(' + (num - 1) + ') .lazy'));
}
}
}
});
}
lazyLoad();
//导航切换
navHammer = new Hammer(document.getElementById('order-nav'));
navHammer.on('tap', function(e) {
var $cur = $(e.target).closest('li'),
index;
var $cur = $(e.target).closest('li');
if ($cur.length === 0 || $cur.hasClass('active')) {
return;
}
index = $cur.index();
activeIndex = +$cur.index();
$navLi.filter('.active').removeClass('active');
$cur.addClass('active');
$curContainer.addClass('hide');
$curContainer = $orderContainer.children(':eq(' + index + ')').removeClass('hide');
$curContainer = $orderContainer.children(':eq(' + activeIndex + ')').removeClass('hide');
if (orderPage[activeIndex] > 0) {
return;
} else {
getOrders();
}
});
//点击订单区域跳转订单详情页
orderHammer = new Hammer(document.getElementById('order-container'));
orderHammer.on('tap', function(e) {
var $cur = $(e.target),
$order,
id,
url;
if ($cur.closest('.locHref').length > 0) {
... ... @@ -46,7 +99,39 @@ orderHammer.on('tap', function(e) {
}
$order = $cur.closest('.order');
url = $order.data('href');
id = $order.data('id');
if ($cur.closest('.del').length > 0) {
//Order delete
$.ajax({
type: 'GET',
url: '/home/delOrder',
data: {
id: id
}
});
} else if ($cur.closest('.cancel').length > 0) {
location.href = url;
//Order cancel
$.ajax({
type: 'GET',
url: '/home/cancelOrder',
data: {
id: id
}
});
} else {
//Location to order detail
url = $order.data('href');
location.href = url;
}
});
$(window).scroll(function() {
if ($(window).scrollTop() + winH >
$(document).height() - 0.25 * $orderContainer.height()) {
getOrders();
}
});
\ No newline at end of file
... ...
... ... @@ -420,6 +420,7 @@ class HomeController extends AbstractAction
} else {
$order['walkwayUrl'] = 'http://www.baidu.com';
}
//渲染模板
$this->_view->display('order', array(
'order' => $order,
... ... @@ -430,7 +431,7 @@ class HomeController extends AbstractAction
/*
* 我的订单-处理ajax请求页面(切换订单状态)
*/
public function orderAjaxAction() {
public function getOrdersAction() {
//判断是不是ajax请求
if (!$this->isAjax()) {
... ...