GWT / Firefox:getOffsetHeight()始终返回0

时间:2009-06-09 12:05:17

标签: firefox gwt firefox-3

使用GWT 1.6.4,我有以下代码来检索浏览器窗口的尺寸:

RootPanel panel = RootPanel.get();

int height = panel.getOffsetHeight();
int width = panel.getOffsetWidth();

现在,在托管模式浏览器和IE中(但我相信托管模式浏览器使用IE,对吗?),这将返回宽度和高度的正确值。但是,在FF3中,width给出正确的值,但高度始终为零。有谁能解释一下?难道我做错了什么?在Firefox中检索窗口高度的正确方法是什么,有一种方法可以在IE和Firefox中正常工作吗?

3 个答案:

答案 0 :(得分:2)

您是否尝试过Window.getClientHeight()和Window.getClientWidth()方法?

查看JavaDocs

答案 1 :(得分:0)

使用javascript,你可以通过以下方式获取窗口高度:

int height = document.body.clientHeight;

现在GWT是否会指定你指定特定的javascript片段,我不知道。您可以在GWT google论坛中发帖,可在以下网址找到:http://groups.google.com/group/Google-Web-Toolkit?pli=1

答案 2 :(得分:0)

我在这里猜测:在Firefox中,在检查RootPanel.get()。getOffsetHeight()的那一刻,它是空的并且没有伸展到视口中,只是水平地。 因此,如果您需要实际的窗口/视口尺寸,最好使用Window.getClientHeight()。