1. 程式人生 > >extjs grid 實時重新整理的時候記錄滾動條的位置,讓滾動條不動

extjs grid 實時重新整理的時候記錄滾動條的位置,讓滾動條不動

在實時重新整理的時候資料量過大會出現滾動條。這時候需要記錄滾動條的位置。只需在grid的viewConfig屬性裡面新增如下引數

viewConfig: {//實時重新整理的時候記錄滾動條的位置,讓滾動條不動

    onLoad : Ext.emptyFn,

       listeners: {

           beforerefresh : function(v) {

               v.scrollTop = v.scroller.dom.scrollTop;

              v.scrollHeight= v.scroller.dom.scrollHeight;

           },

           refresh: function(v){

v.scroller.dom.scrollTop= v.scrollTop + (v.scrollTop == 0 ? 0 : v.scroller.dom.scrollHeight -v.scrollHeight);

           }

       }

    }

如果全部grid都想實現這個功能可以這樣

Ext.override(Ext.grid.GridView, {

    scrollTop : function() {

        this.scroller.dom.scrollTop= 0;

        this.scroller.dom.scrollLeft= 0;

    },

    scrollToTop : Ext.emptyFn

});