我需要找出动态创建的容器的绝对位置,这些容器会添加到面板中。
var activityContainer = Ext.create('Ext.Container', {
html: activityName,
width: ACTIVITY_WIDTH,
height: ACTIVITY_HEIGHT,
margin: topMargin + ' 0 0 0',
cls: 'activity',
listeners: {
render: function () {
this.getEl().dom.title = 'Name: ' + activity.name + reqQuicktip;
},
afterrender: function() {
console.log('Y: ' + this.getEl().getTop() +' X: '+ this.getEl().getLeft())
}
}
})
tradePanel.add(activityContainer);
我了解到我只能在容器已经渲染时获得该位置。因此我使用了Afterrender监听器。方法getY()/ getTop()等不按我预期的方式工作。我的x坐标总是得1,没有足够的y坐标。
我在这里缺少什么?
谢谢!
答案 0 :(得分:0)
根据您实施面板的方式,关键字this
可能会返回错误面板的信息。
您可以像这样创建听众:
afterrender: function(component) {
console.log('Y: ' + component.getY() +' X: '+ component.getX());
}
以下是您要测试的小提琴:https://fiddle.sencha.com/#fiddle/cud