collocation.page.js
2.72 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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
/**
* 星潮教室-星搭配分页加载
* @author: wsl<shuiling.wang@yoho.cn>
* @date: 2016/4/12
*/
let $ = require('yoho-jquery'),
tip = require('../plugin/tip'),
loading = require('../plugin/loading'),
lazyLoad = require('yoho-jquery-lazyload'),
ellipsis = require('yoho-mlellipsis');
let stopLoading = false,
page = 1;
require('./list-common');
ellipsis.init();
function massageAJAX(pageData) {
let $this, $title, $cont;
loading.showLoadingMask();
$.ajax({
type: 'GET',
url: '/guang/star/collocation/list',
data: {
page: pageData,
appVersion: window.queryString.app_version
},
dataType: 'html',
success: function(data) {
stopLoading = false;
if (data === '') {
stopLoading = true;
tip.show('没有更多内容了');
}
$('.collocation-list').append(data);
// 限制标题字数
$('.cont-area').each(function() {
$this = $(this);
$title = $this.find('.title');
$cont = $this.find('.cont-txt');
$title[0].mlellipsis(2);
$cont[0].mlellipsis(2);
});
loading.hideLoadingMask();
lazyLoad($('img.lazy'));
if (pageData === 1) {
$('.buriedpoint').on('click', bpClickHdl); // eslint-disable-line
}
},
error: function() {
tip.show('网络断开连接了~');
}
});
}
function scrollHandler() {
if (!stopLoading && ($(window).scrollTop() + $(window).height() > $('body').height() * 0.75)) {
stopLoading = true;
page++;
massageAJAX(page);
}
}
$(window).scroll(function() {
window.requestAnimationFrame(scrollHandler);
});
if ($('.collocation-list').find('li').length === 0) {
massageAJAX(1);
}
// app埋点
let C_ID = window._ChannelVary[window.cookie('_Channel')];
let bpClickHdl = function() {
if (!window._yas || !window._yas.sendAppLogs) {
return;
}
let $this = $(this);
window._yas.sendAppLogs({
appop: 'YB_H5_STROLL_STAR_FLR_C',
param: JSON.stringify({
C_ID: C_ID,
TAB_INDEX: 2,
TAB_NAME: '星搭配',
CONTENT_INDEX: $this.index() + 1,
CONTENT_ID: $this.attr('articleId')
})
}, true);
};
setTimeout(function() {
if (!window._yas || !window._yas.sendAppLogs) {
return;
}
window._yas.sendAppLogs({
appop: 'YB_H5_STROLL_STAR_TAB_C',
param: JSON.stringify({
C_ID: C_ID,
TAB_INDEX: 2,
TAB_NAME: '星搭配'
})
}, true);
}, 500);