Angular 2+ 监听
监听页面大小变化
// 1. 引入:
import { fromEvent } from 'rxjs';
// 2. 使用(在constructor中或ngOnInit方法中):
// 在constructor中:
constructor() {
// 页面监听
fromEvent(window, 'resize')
.debounceTime(100) // 以免频繁处理
.subscribe((event) => {
// 这里处理页面变化时的操作
console.log('page window size change ..');
});
}
// 或在ngOnInit方法中
ngOnInit() {
// 页面监听
fromEvent(window, 'resize')
.debounceTime(100) // 以免频繁处理
.subscribe((event) => {
// 这里处理页面变化时的操作
console.log('page window size change ..');
});
}
监听页面滚动条变化
// 1. 引入:
import { fromEvent } from 'rxjs';
// 2. 使用(在constructor中或ngOnInit方法中):
iTime: any;
// 在constructor中:
constructor() {
// 页面监听
fromEvent(window, 'scroll')
.subscribe((event) => {
// 这里处理滚动条变化时的操作
clearTimeout(this.iTime); // 以免频繁处理
this.iTime = setTimeout(() => {
console.log('scroll change ..');
}, 1000);
});
}
// 在ngOnInit方法中
ngOnInit() {
// 页面监听
fromEvent(window, 'scroll')
.subscribe((event) => {
// 这里处理滚动条变化时的操作
clearTimeout(this.iTime);
this.iTime = setTimeout(() => {
console.log('scroll change ..');
}, 1000);
});
}