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

标签 javascript jquery css angularjs cordova

我有一个 ul > li 的元素列表,顶部有一个重新加载按钮。 如果我点击重新加载按钮,元素将异步添加到数据模型中。每次向模型添加元素时,它都会显示在 View 中,并且浏览器会滚动到顶部。 这是一个 Cordova 应用程序 (HTML5)。 我当然可以记住滚动位置并向后滚动,但这可能会变得可见并且只是一个 hack imo。

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

最佳答案

我认为问题是:

  • 您点击重新加载按钮
  • 您的代码清除元素数组并触发 Angular 重建 DOM,自动滚动滚动到顶部

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

关于javascript - 重新加载后 Angular JS 保留滚动位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26297479/

相关文章:

javascript - 重复使用clearInterval和clearTimeout不起作用

javascript - Jquery 删除按钮上的所有克隆单击

javascript - 如何在 Kendo UI 的自动完成模板上设置 `this` 的范围?

javascript - 滚动时从下往上滑入元素

html - 包装器中 div 的 overflow-x

javascript - 使用 Chai - 如何检查对象属性是否包含 DOM 元素

javascript - 什么是全局长度变量(window.length)?

javascript - 模拟从 <asp :button> 上的 <button> 单击

jquery - 如何用 jQuery 只填充两个输入中的一个输入?

html - 与 Telerik 控件的内置 javascript 函数相关的问题