controller.js
1.88 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
import $ from 'yoho-jquery';
import Page from 'yoho-page';
class ConponController extends Page {
constructor() {
super();
this.view = {
filterBtn: $('.filter-btn'),
filterItem: $('.filter-item'),
showFilterBtn: $('.show-filter-btn'),
couponSection: $('.coupon-section')
};
this.view.filterBtn.on('click', this.tapChange.bind(this));
this.view.showFilterBtn.on('click', this.showFilter.bind(this));
this.view.couponSection.on('click', '.show-intro-btn', this.showIntro.bind(this));
}
/**
* tab 切换
*/
tapChange(event) {
let itemClicked = $(event.currentTarget);
if (itemClicked.hasClass('active')) {
itemClicked.removeClass('active');
} else {
this.view.filterBtn.removeClass('active');
itemClicked.addClass('active');
}
}
/**
* 展示筛选器
*/
showFilter() {
if (this.view.filterItem.hasClass('hide')) {
this.view.filterItem.removeClass('hide');
this.view.showFilterBtn.removeClass('icon-down').addClass('icon-up');
} else {
this.view.filterItem.addClass('hide');
this.view.showFilterBtn.removeClass('icon-up').addClass('icon-down');
}
}
/**
* 展示优惠券介绍
*/
showIntro(e) {
let delegateTarget = $(e.delegateTarget);
let couponIntro = delegateTarget.find('.coupon-intro');
let showIntroIcon = delegateTarget.find('.show-intro-icon');
if (couponIntro.hasClass('hide')) {
couponIntro.removeClass('hide');
showIntroIcon.removeClass('icon-down').addClass('icon-up');
} else {
couponIntro.addClass('hide');
showIntroIcon.removeClass('icon-up').addClass('icon-down');
}
}
}
export default ConponController;