При написании Javascript функции, от которой я получил помощь от ранее , которая получает высоту скрытого элемента, кто-то дал мне ссылку на функцию Prototype getDimensions (), В этом примере они устанавливают «visibility: hidden; position: absolute; display: block;», что фактически позволяет нам измерить то, что clientHeight будет , если бы оно отображалось. Затем они все это откладывают, и вы можете заняться своими делами. Я не использовал прототип, но я бы предположил, что он работает нормально. Тем не менее, когда я пытался имитировать ту же функцию в своем собственном коде, использование «position: absolute;» скинул измерение. Без него он работает нормально, но его использование позволяет нам делать это за доли секунды, не искажая дизайн. Моя версия ниже, есть идеи, почему она не работает?
var objStyle = obj[objName].style;
// Record original style values
var visibility = objStyle.visibility;
//var position = objStyle.position;
var display = objStyle.display;
// Modify object for measuring
objStyle.visibility = "hidden";
//objStyle.position = "absolute";
objStyle.display = "block";
// Measure height
height = obj[objName].clientHeight;
// Fix object
objStyle.visibility = visibility;
//objStyle.position = position;
objStyle.display = display;
// Return height
return parseInt(height);
Заранее спасибо за помощь.