我想知道是否有任何方法可以以像素爲單位獲取div高度,儘管其高度較早設置爲100%高度。
這是必需的,因爲div內容是動態的,所以div高度根據內容本身具有不同的值。儘管其高度設置爲100%,但以高分辨率獲取div高度
[編輯] Div默認是隱藏的。
我需要以像素爲單位獲取div高度以供後期操作(平滑滾動將爲div完成)?
有沒有辦法做到這一點?
我想知道是否有任何方法可以以像素爲單位獲取div高度,儘管其高度較早設置爲100%高度。
這是必需的,因爲div內容是動態的,所以div高度根據內容本身具有不同的值。儘管其高度設置爲100%,但以高分辨率獲取div高度
[編輯] Div默認是隱藏的。
我需要以像素爲單位獲取div高度以供後期操作(平滑滾動將爲div完成)?
有沒有辦法做到這一點?
既然你標記的jQuery,使用
$("#myElement").height();
對於純醇」 JavaScript中,你可以使用element.clientHeight
或element.offsetHeight
,這取決於哪一個適合您的需求。
.show()
它調用
.height()
之前,你可以再次隱藏它立刻:
var $myEl = $('#myElement').show();
var height = $myEl.height();
$myEl.hide();
theDiv.clientHeight
您可以使用height()
$("#divInQuestion").height();
你可以使用.height()功能:
$('#divid').height()
在緩慢的瀏覽器上,顯示/隱藏方法可能會導致閃爍(儘管計算機必須非常慢)。所以如果你想避免這種情況,給div一個不透明度:0 - 甚至可能是一個位置:絕對,所以它不推動內容。所以擴展以前的代碼:
var $myEl = $('#myElement').css({"opacity": "0", "position": "absolute"}).show();
var height = $myEl.height();
$myEl.hide().css({"opacity": "", "position": ""});
但是再次。這可能是矯枉過正。
你使用jQuery嗎?或者你想要一個純粹的JS解決方案? – 2010-06-23 11:40:08
是的,我使用jQuery。 – Ahmed 2010-06-23 11:43:10