如何获得<div>的渲染大小

Séb*_*omp 3 size gwt

我有一个FlowPanel,其高度是固定的(它实际上是其父高度的百分比,这是固定的).
在这个面板中,我添加了几个div元素.使用CSS,我将其高度设置为其父级的100%.
我想要做的是使用javascript将其宽度设置为等于其高度.

我遇到的问题是我不知道何时运行这个javascript.我尝试将它添加到onLoad()我的容器的方法,但高度尚不知道(getOffsetHeight()返回0).

我看了类似的问题(比如GWT - 检索未显示的小部件的大小),但它们并不完全相同.

Jas*_*erk 7

将调用推迟到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)