angular8 modal弹窗中实现吸顶操作
1 首先在modal弹窗加特殊的行间class 或者 id 作为标记
我是使用class作为标记
const modal = this.modalService.create({
nzTitle: '变更项目计量',
nzClassName:'meterageTable', // 标记class
nzContent: MeterageChangeTableComponent,
nzWidth: 1200,
nzFooter: [{
label: '保存',
onClick: (scope) => {
modal.close();
}
}, {
label: '取消',
onClick: () => {
modal.close();
}
}]
});
2 然后modal弹窗使用的组件MeterageChangeTableComponent中添加监听
// 获取modal框
const modal框 = document.querySelector('.meterageTable').parentNode;
// 获取监听modal框的滚动事件
fromEvent(modal, 'scroll').subscribe((e:any) => {
// 使用top接受滚动的距离
this.top = e.target.scrollTop;
});
3 在html中监听top大小,超出最大值(这个自己计算),切换组件
<div *ngIf="top<=maxTop" class="table-operations"></div>
版权声明:本文为qq_41373731原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。