angular - Angular - 按钮滚动到顶部
问题描述
我开发了一个图片库。有没有办法在页面上滚动时,我会看到一个按钮,当点击它时,所有的滚动都到了顶部(页面的开头)?
我已经测试了一些我发现的案例,但到目前为止没有一个有效:(有人可以帮助我吗?
代码
<ul class="mdc-image-list my-image-list" style="padding-left: 10px;padding-right: 10px;">
<li class="mdc-image-list__item" *ngFor="let product of Images; let j = index;">
<div class="mdc-image-list__image-aspect-container">
<img [src]="product.image" class="mdc-image-list__image">
</div>
</li>
</ul>
解决方案
使用 hostListener 监听窗口滚动事件,然后使用 angular ViewPortScroller 服务,该服务提供scrollToPostion方法使用该方法滚动到指定位置。
试试这个:
组件.ts
@HostListener('window:scroll', ['$event']) onScroll(event){
this.pageYoffset = window.pageYOffset;
}
constructor(private scroll: ViewportScroller) { }
scrollToTop(){
this.scroll.scrollToPosition([0,0]);
}
推荐阅读
- java - 尝试获取集合时,Android Studio 不会重新设置 .collection 方法
- javascript - 三个按钮显示相同的内容。如何?
- dart - 即使构建成功且没有错误,也无法在 sublime text 3 中输出飞镖
- javascript - 如何找到动态生成的当前元素索引?
- difftime - 计算R中所有可能的“时间差”组合
- ionic-framework - 如何在 ionic 4 的浏览器(pwa)中使用社交分享插件?
- javascript - 在 JavaScript 函数中执行 Firestore 查询
- spring - Hystrix在第一次zuul调用时读取超时状态504
- python - 即使测试失败,Pytest 也会返回状态码 0
- julia - 如何在 Julia/JuMP v 1.10 中为所有人求和