Angular JS在重新加载后保留滚动位置

Angular JS retain scroll position after reload

本文关键字:保留 滚动 位置 加载 JS 新加载 Angular      更新时间:2023-09-26

我有一个ul>li项目列表,顶部有一个重载按钮。如果我点击重载按钮,项目将异步添加到数据模型中。每次向模型中添加项目时,它都会显示在视图中,浏览器会滚动到顶部。这是一个Cordova应用程序(HTML5)。我当然记得滚动位置和向后滚动,但这可能会变得可见,只是一个黑客攻击。

如何确保滚动位置保持在同一位置?

我认为问题是:

  • 单击"重新加载"按钮
  • 您的代码清除项目数组,并触发angular来重建DOM,自动滚动到顶部

我建议解决方案,尝试在angular ng repeat中使用$track by $indexhttps://docs.angularjs.org/api/ng/directive/ngRepeat