我想要能够滚动到一个目标,当一个按钮被按下。我在想这样的事情。
<button (click)="scroll(#target)">Button</button>
并且在我的component.ts
中有一个类似的方法。
scroll(element) {
window.scrollTo(element.yPosition)
}
我知道上面的代码是无效的,但只是为了显示我的想法。我刚刚开始学习Angular 4,之前没有Angular的经验。我一直在寻找类似的东西,但所有的例子都是AngularJs,这与Angular4有很大的不同
你可以这样做:
<button (click)="scroll(target)"></button>
<div #target>Your target</div>
然后在组件中:
scroll(el: HTMLElement) {
el.scrollIntoView();
}
编辑:我看到一些注释指出,由于元素未定义,这将不再起作用。我在Angular 7中创建了一个StackBlitz示例,它仍然可以工作。有人能提供一个例子,它不起作用吗?