[英]How to scroll to bottom in the Ext JS 3.4 grid?
我有一个网格面板(里面有Ext.ux.grid.RowEditor面板),我想滚动到底部(在底部附近,我的Ext.ux.grid.RowEditor没有完整显示),
这段代码不起作用:
this.MyGrid.getView().on('scrollToBottom', function(){
var inputEl = this.MyGrid.el.dom;
inputEl.scrollTop = inputEl.scrollHeight;
}, this);
.....
然后按下保存按钮时,我会触发事件:
this.MyGrid.getView().fireEvent('scrollToBottom',this);
任何想法,为什么它不滚动? 谢谢!
.on()
函数用于为事件设置侦听器功能,而不是添加自定义事件。 同样, .fireEvent()
函数用于触发对象上的事件。 不能定义您自己的事件,而且ExtJs中没有“ scrollToBottom”事件。
您要做的就是将您的scrollToBottom代码定义为一个函数,然后从保存按钮的点击处理程序中调用它
请尝试使用addEvent方法(使用init)将事件添加到网格中,然后将事件作为侦听器添加到网格中。 必要时使用fireEvent方法触发事件(在用户单击保存按钮的情况下),然后在侦听器中订阅它。
示例代码如下所示(您必须添加此事件,然后将其触发。)将事件添加到init组件中如下所示(在下面,这是指网格范围)
this.addEvents('SCROLL_TO_BOTTOM');
您必须订阅该事件并设置网格的滚动高度。将以下侦听器添加到网格中。
listeners: {
'SCROLL_TO_BOTTOM': this.handleScroll,
scope: this
}
处理滚动的功能
handleScroll:function(){
var inputEl = this.MyGrid.el.dom;
inputEl.scrollTop = inputEl.scrollHeight;
}
希望这对您有帮助...
我找到了解决方案! 没有其他事件和听众,只是
var inputEl = this.myGrid.getView().scroller.dom;
inputEl.scrollTop = inputEl.scrollHeight;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.