我在ExtJS中有一个带滚动条的网格面板。我试图检测用户何时完全向下滚动(这样他们就不能再移动吧)。到目前为止,我有这个,它检测滚动发生的时间,但没有提供关于滚动条位置的信息(?)。
//bufferedGrid is a grid panel
this.randomGrid.getView().on('scroll', this.onRandomGridScroll, this);
.
.
.
onRandomGridScroll : function(e, t)
{
console.log(e);
console.log(t);
}
任何指针都将不胜感激。谢谢!
答案 0 :(得分:0)
您可以访问当前滚动条位置(实际上是滚动条的顶部)和最大滚动位置,如下所示(适用于Firefox但不适用于Chrome ):
onBufferedGridScroll : function(e, t)
{
var max = this.bufferedGrid.getView().el.dom.scrollTopMax;
var current = this.bufferedGrid.getView().el.dom.scrollTop;
if( current == max )
alert('You have reached the bottom of the scroll !');
}
答案 1 :(得分:0)
在init上添加事件 呈现网格后,添加鼠标事件和向下滚动事件。
'container #gridId':{
afterrender: this.addScrollEventListener
}
addScrollEventListener: function(comp){
comp.getTargetEl().on('mouseup', function(e, t) {
var height = comp.getTargetEl().getHeight();
if (height + t.scrollTop >= t.scrollHeight) {
}
});
comp.getTargetEl().on('wheeldown', function(e, t) {
var height = comp.getTargetEl().getHeight();
if (height + t.scrollTop >= t.scrollHeight) {
}
});
}