sale.page.js
2.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
/**
* 商品列表页
* @author: wsl<shuiling.wang@yoho.cn>
* @date: 2016/5/17
*/
require('product/sale/index.page.css');
let $ = require('yoho-jquery'),
Swiper = require('yoho-swiper2'),
ellipsis = require('yoho-mlellipsis'),
fastclick = require('yoho-fastclick'),
lazyload = require('yoho-jquery-lazyload');
let search = require('./sale/search');
let defaultOpt = require('../common/query-param');
require('../common');
search.start();
lazyload($('img.lazy'));
ellipsis.init();
$('.swiper-container').each(function() {
if ($(this).find('.swiper-slide').length > 1) {
new Swiper($(this).get(0), {
lazyLoading: true,
lazyLoadingInPrevNext: true,
loop: true,
autoplay: 3000,
autoplayDisableOnInteraction: true,
paginationClickable: true,
pagination: $(this).closest('.banner-top').find('.pagination-inner').get(0)
});
}
});
$(function() {
var $body = $('body');
var $saleNavSelect = $('.sale-nav-select');
var $vipFloor = $('.vip-floor');
var $saleNavWrap = $('.sale-nav-wrap');
var $listNavLayer = $saleNavWrap.find('.list-nav-layer');
var $filterMask = $('.filter-mask');
fastclick.attach(document.body);
$('.sale-nav').on('click', function() {
$saleNavSelect.toggleClass('show');
});
// 读取会员专享商品
$.ajax({
url: '/product/sale/search',
data: {
yh_channel: window.queryString.channel || defaultOpt.channel || 'boys',
saleType: '2',
productPool: $vipFloor.data('id'),
limit: '4'
}
}).then(function(res) {
if (/good-info/.test(res)) {
$vipFloor.html(res).addClass('goods-container');
lazyload($vipFloor.find('img.lazy'));
$('.good-detail-text .name').each(function() {
var $this = $(this),
$title = $this.find('a');
$title[0].mlellipsis(2);
});
$vipFloor.css('padding-bottom', '0.75rem');
}
});
$saleNavWrap.css({
height: $saleNavWrap.height()
});
$(window).on('scroll', function() {
if (!$filterMask.length) {
$filterMask = $('.filter-mask');
}
if ($body.scrollTop() > $saleNavWrap.offset().top) {
$listNavLayer.addClass('fixed');
$filterMask.addClass('fixed');
} else {
$listNavLayer.removeClass('fixed');
$filterMask.removeClass('fixed');
}
}).trigger('scroll');
});