【发布时间】:2017-10-12 05:38:23
【问题描述】:
我希望能够在按下按钮时滚动到目标。我在想这样的事情。
<button (click)="scroll(#target)">Button</button>
在我的component.ts 中,类似的方法。
scroll(element) {
window.scrollTo(element.yPosition)
}
我知道上面的代码是无效的,只是为了说明我的想法。我刚刚开始学习 Angular 4,之前没有 Angular 的经验。我一直在寻找类似的东西,但所有示例都在 AngularJs 中,与 Angular 4 有很大不同
【问题讨论】:
-
你的语法没有问题,但你需要定义什么是#target。
-
所以这应该有效吗?当我在函数中使用任意数字并调用 window.scrollTo(500) 时,什么也没有发生。我在想那个元素会是一个 HTMLElement
-
对,但是,#target是什么,Angular不会解决它?你可以先不带参数测试scroll()。
-
是的,我在按钮中尝试了 (click)="scroll()" 并在组件中尝试了 window.scrollTo(0, 500) 但没有任何反应
-
但是当我在构造函数中以 500 毫秒的延迟执行 window.scrollTo(0, 500) 时,它可以工作
标签: javascript html angular typescript