angular - scrollIntoView() 角度 7 不滚动
问题描述
我正在尝试在我的应用程序中实现从一个组件滚动到另一个组件,但目前它只是“跳转”到该组件,而不是滚动。
我尝试了以下方法:
export class HomeComponent implements OnInit {
scroll(el: HTMLElement) {
el.scrollIntoView({ block: 'start', behavior: 'smooth', inline: 'nearest' });
}
constructor() {
}
ngOnInit() {
}
}
这是我的模板:
<section class="bg-full bg-home">
<div class="logo"></div>
<a (click)="scroll(testPortfolio)" href="#portfolio" id="scroll-to-section">
<img src="../../assets/arrow-scroll.svg" width="36">
</a>
</section>
<app-about></app-about>
<app-portfolio-slider #testPortfolio></app-portfolio-slider>
<app-contact></app-contact>
或者,我也尝试过使用ViewChild()
,但这总是undefined
按我的假设返回,因为<app-portfolio-slider>
尚未渲染。
为了使滚动顺利进行,我需要做什么?
解决方案
所以我的假设是不正确的。正如@arbghl在评论中提到的,作者只需要使用<div>
具有scrollIntoView()
方法的目标元素包装并将该 div 用作目标元素。希望有帮助。
推荐阅读
- javascript - firebase.storage() 不起作用,但它在谷歌的示例代码中工作
- python - 如何在 python 代码中识别导入的包
- mysql - 如何加入价格但允许 +/- 30% 的差异 MySQL
- echo - Amazon Echo 审查 SSML 输出
- git - 是否可以推送不在 git 任何分支中的提交?
- powerbi - Power Bi 测量在桌面应用程序上工作,但在发布时失败
- javascript - 在 Pentaho 中清除字符串中的错误 XML 字符
- c++ - 如何使用 volatile 向量?
- websphere - Eclipse Neon 中的 Websphere Application Server v9
- python - 需要帮助在 Python 中操作用于 panelOLS 回归的数据集