获取 DIV 的 scrollHeight

Get scrollHeight of a DIV

我正在尝试使用以下代码获取 div 的滚动高度:

    GQuery element = $(".pre.line-numbers");
    String height = element.attr("scrollHeight");
    Window.alert(height); // empty!
    $("pre.line-numbers")
            .css("overflow-y", "hidden")
            .css("overflow-x", "auto")
            .css(CSS.HEIGHT, height + "px"); // here

但每次,字符串高度都是空字符串。

我仔细检查了浏览器检查器,我可以看到高度在那里。此外,为了验证这一点,我手动将高度设置为特定值,我可以看到它应用于 pre.line-numbers div

我在这里错过了什么?为所有主流浏览器(如 Firefox 和 Chrome)获取 scrollHeight 的正确方法是什么?

希望这对您有所帮助

 $(".pre.line-numbers")[0].scrollHeight;

这是使用 GwtQuery 获取 "scrollHeight" 的代码:

int height = $("pre.line-numbers").get(0).getPropertyInt("scrollHeight");
$("pre.line-numbers").css("overflow-y", "hidden")
                     .css("overflow-x", "auto")
                     .css(CSS.HEIGHT, height + "px");