角度CLI;焦点也滚动到输入

时间:2017-07-14 14:36:02

标签: html angular typescript

我正在使用this library在我的应用中的某些位置滚动页面。一切都运行良好,直到我添加了与页面滚动同时发生的这一行。

this.myInput.first.nativeElement.focus()

这导致focus()竞争页面滚动。由于我给页面滚动调用pageScrollDuration并且focus()显然滚动持续时间为0,因此页面会跳转到input而不是在那里平滑滚动。

如何确保页面滚动平滑滚动到元素,同时仍然专注于它?

1 个答案:

答案 0 :(得分:2)

我能找到的解决方案是包装

this.myInput.first.nativeElement.focus()

以下内容:

setTimeout(() => {
  this.myInput.first.nativeElement.focus()
}, 0)

这会导致页面滚动顺利进行。