Я решил проблему. Вместо использования document.querySelector ('. Button'). ClassList.add ('sticky-bottom-margin'); , чтобы добавить класс на мою липкую кнопку. Я просто добавил логическую переменную, если страница достигла конца страницы, и как только логическое значение истинно, я добавляю класс на мою липкую кнопку в html.
HTML:
<div class="sticky-save-button" [class.sticky-bottom-margin]="bottomScroll">
<button mat-button class="btn-primary"> Save </button>
</div>
TS:
@HostListener('window:scroll', [])
onScroll(): void {
this.bottomScroll = false;
if (window.innerHeight + window.scrollY >= document.body.scrollHeight) {
this.bottomScroll = true;
}
this.cdr.detectChanges();
}
Спасибо!