我正在使用 JS (Prototype & Scriptaculous) 在 div 中添加元素后动态设置 div 的高度。我的代码已被解释如下:
bheight = $('body_'+current_item).getHeight();
bheight += 22;
bheight += 'px';
$('body_'+current_item).setStyle({
height: bheight
});
在上面的代码中,我首先使用 'getHeight()' 函数来获取唯一 body div 的高度。然后我将 22 添加到该数字,并将“px”附加到末尾,并使用“setStyle”应用更改。
奇怪的部分来了。当我在页面加载后运行我的函数时,一切都运行得很好。但是,如果我在 javascript 文件的末尾添加一行来运行该函数(因此它在页面加载时运行),我会发疯。随着可见性被神奇地改变,整个 div 消失了。有关信息,请参阅下面的片段。
<div id="body_1" class="edit_bg_box" style="position: absolute; visibility: hidden; display: block; width: 200px; height: 22px;">Internal div data...</div>
在我的 CSS 或代码中,我没有将可见性设置为隐藏或位置设置为绝对。为了比较,下面是 div应该是什么样子的片段。
<div id="body_1" class="edit_bg_box"></div>
在这一点上,我正在失去理智。如果我从主 div 中删除 'getHeight()' 函数,一切都会正常显示(除了 'getHeight()' 应该修复的 div 高度)。如果我添加 'getheight()' 函数,则 div 会完全消失。
任何帮助将不胜感激。