1

我正在 GWT 中制作基于滑块的组件。

Parent : width = 100%
.-------------------------------------------------.
| .---------------------------------------------. |
| |     Child : width = X                       | |
| '---------------------------------------------' |
'-------------------------------------------------'

其中 X = (父母的宽度以 px 为单位) - (一些基于运行时的计算);

我的代码说:

int providedWidth = parentContainer.getOffsetWidth();

在 Firefox 中,我将宽度正确地设置为(例如)345px 但在 IE6 中,无论大小如何,它都会不断地将宽度返回为 0。

从 GWT 的角度来看,Parent 是放置在 DockPanel(超级父级)中的 AbsolutePanel,Child 是一个 Horizo​​ntalPanel。

为简洁起见,我没有在此处放置代码,还有其他方法可以获取宽度还是我做错了什么?

4

2 回答 2

3

只是一个疯狂的猜测,但也许元素需要在 IE6 中“布局”?你能给style='zoom:1'吗?

于 2009-11-23T13:03:20.333 回答
2

在 IE 中,您有时必须在 DeferredCommand 中获取大小信息,因为 IE 仅在事件线程完成后才进行布局。

于 2009-11-23T13:57:29.263 回答