Javascript 无法通过编程设置div的最大高度

Javascript 无法通过编程设置div的最大高度,javascript,html,css,layout,Javascript,Html,Css,Layout,我正在尝试创建一个可以打开和关闭的div动态布局(从上到下100%宽),我不希望内容超出页面底部,因此当打开/关闭状态更改时,我运行如下代码: // BUG: maxHeight exists in the DOM but apparently cannot be programatically set e.style.maxHeight = h; alert('Element ' + e.id + ' was set to have a maxHeight of ' + h + ' but a

我正在尝试创建一个可以打开和关闭的div动态布局(从上到下100%宽),我不希望内容超出页面底部,因此当打开/关闭状态更改时,我运行如下代码:

// BUG: maxHeight exists in the DOM but apparently cannot be programatically set
e.style.maxHeight = h;
alert('Element ' + e.id + ' was set to have a maxHeight of ' + h + ' but actually has a maxHeight of ' + e.style.maxHeight + '.');
无论其初始值如何,警报始终显示“最大高度”不变。这正好是在电视上。所有图元的显示样式均为“块”。调试器未显示任何异常。发生在Chrome、IE和Firefox上。通过样式字符串设置最大高度没有问题。 我不做任何花哨的CSS,比如浮动、位置或边框框之类的东西。
我在这里看到的其他相关答案似乎会说这应该有效。

与JS中的所有尺寸值(高度、宽度、顶部、底部等)一样,该值(
h
在本例中)必须定义一个单位才能有效:

e.style.maxHeight = h + "px";

与JS中的所有尺寸值(高度、宽度、顶部、底部等)一样,该值(
h
,在本例中)必须定义一个单位,才能工作:

e.style.maxHeight = h + "px";

与JS中的所有尺寸值(高度、宽度、顶部、底部等)一样,该值(
h
,在本例中)必须定义一个单位,才能工作:

e.style.maxHeight = h + "px";

与JS中的所有尺寸值(高度、宽度、顶部、底部等)一样,该值(
h
,在本例中)必须定义一个单位,才能工作:

e.style.maxHeight = h + "px";