简短版本:myDiv.style.display
当我在主样式表中将其设置div
为(Javascript) 时返回空白 是否是标准行为,display:none
但在通过内联样式设置时返回“无”?
长版:
我有一些div
s 我通过他们的风格隐藏和取消隐藏,用 Javascript 在和display
之间切换。他们总是从隐藏的 ( ) 开始,因此我一直在设置内联样式:block
none
display:none
<div id="anID" class="aClass" style="display:none">
stuff
</div>
none
这是在和之间切换的Javascript block
。两个 chOpsXXX() 函数只是将 设置divSection.style.display
为相反的值(以及其他内务处理):
var divSection = document.getElementById("chOpsSection" + strSectionID);
var strDisplay = divSection.style.display;
if (strDisplay == "none") {
chOpsDisplaySection(strSectionID);
} else {
chOpsHideSection(strSectionID);
}
当我使用内联样式属性设置初始样式时,这一切都很好display:none
。
我还在主样式表中为这些 div 设置其他样式。display:none
所以我认为将初始状态移动到所述样式表可能是有意义的。我这样做了。我不会发,我想你可以画出来。
但是当我这样做时,div
最初是隐藏的(display:none
),但第一次调用divSection.style.display
返回一个空字符串(alert(strDisplay);
返回一个空字符串,而不是 null)。
上面显示的我的 Javascript 然后将其隐藏(因为它不等于“none”),然后下一次调用divSection.style.display
返回“none”,并且从那里一切正常。(如果我inline
在主样式表中将其设置为相同的行为:div
初始可见,并且第一次调用divSection.style.display
返回一个空白字符串)。
这很容易通过在上面的 Javascript 中检查“无”和“”来解决。但我想知道返回一个空白字符串divSection.style.display
是否是标准行为。
欢迎所有回复。