我正在尝试实现一个自动滚动到底部的div,除非它已被用户滚动。 我的Html:
<ul id='logWrap' class='logWrap' (scroll)="onLogScroll()">
...
</ul>
我的组件中的相关代码:
ngOnInit(){
setInterval(() => { this.updateScroll() }, 3000);
}
updateScroll(){
var element = document.getElementById("logWrap");
if(element && !this.scrolled){
element.scrollTop = element.scrollHeight;
}
}
onLogScroll(){
this.scrolled = true;
}
正确调用onLogScroll并将this.scrolled设置为true。但是,它通过updateScroll和“element.scrollTop = element.scrollHeight;”以某种方式重新设置为false。无论什么,在函数的每一遍都执行。
“this.scrolled”在代码中没有其他地方被触及。我一定很遗憾。
谢谢!