【问题标题】:How do you stop scrolling to top when grid store is reloaded重新加载网格存储时如何停止滚动到顶部
【发布时间】:2019-09-30 22:55:45
【问题描述】:

我有一个使用 ExtJS 3.3.0 的应用程序。它使用一个 EditorGridPanel,在重新加载商店后 - 我希望它保留网格的滚动位置,而不是将其发送回顶部。

因为这是 ExtJS 的早期版本 - 这不起作用:

viewConfig: {
   preserveScrollOnRefresh: true
}

到目前为止,我唯一能想到的就是在加载之前保存滚动条的位置 - 然后在重新加载完成后重置位置。

我可以保存位置:

var scrollPos;

bodyscroll: function(sl, st) {
    scrollPos = st;
},

但是我不知道之后如何设置位置。

有什么建议吗?

提前致谢。

【问题讨论】:

    标签: extjs3


    【解决方案1】:

    可能有多种方法可以做到这一点,但一种方法是使用滚动元素,该元素可通过网格的 gridview 访问。请参阅此处的小提琴:Grid scoll save/restore

    获取滚动值(您已经弄清楚了):

    var top = grid.getView().scrollergetScroll().top;
    

    恢复:

    grid.getView().scroller.scrollTo('top',top);
    

    【讨论】:

    • 祝福你。如此简单的解决方案,但我找不到任何有效的方法。再次感谢。
    猜你喜欢
    • 2019-10-04
    • 2016-10-03
    • 1970-01-01
    • 1970-01-01
    • 2020-05-25
    • 2016-07-25
    • 2011-03-18
    • 2013-07-30
    • 1970-01-01
    相关资源
    最近更新 更多