我有一个FlowPanel,其高度是固定的(它实际上是其父高度的百分比,这是固定的).
在这个面板中,我添加了几个div元素.使用CSS,我将其高度设置为其父级的100%.
我想要做的是使用javascript将其宽度设置为等于其高度.
我遇到的问题是我不知道何时运行这个javascript.我尝试将它添加到onLoad()我的容器的方法,但高度尚不知道(getOffsetHeight()返回0).
我看了类似的问题(比如GWT - 检索未显示的小部件的大小),但它们并不完全相同.
将调用推迟到getOffsetHeight()事件循环结束:
@Override
public void onLoad() {
Scheduler.get().scheduleDeferred(new ScheduledCommand() {
@Override
public void execute() {
// Get and work with the element's offsetHeight.
}
}
}
Run Code Online (Sandbox Code Playgroud)