2017-10-09 52 views
0

我正在通过一个示例工作,并且遇到了这个问题。Bootstrap折叠的div初始显示属性为空

我有一个div集最初被折叠,然后从javascript函数检查其状态。我最初测试的是“无”,而且没有工作。经过一些测试后,我发现测试“”确实奏效。 是这个标准,还是我正在做的事情?

工作版本:

<div id="menuItem" class="well collapse"> 
    <p id="itemDesc">test</p> 
</div> 
... 
function showItem(itemName){ 
if (document.getElementById('menuItem').style.display == ""){ 
    document.getElementById('menuItem').style.display = "block"; 
    } 
} 

回答

0

这是通过您所使用的方法标准。 document.getElementById('element').style.display只检查元素上的样式,并且因为没有显示样式存在于该元素上,所以它返回""。要获得元素上的计算样式(即从样式表),您需要使用属性getComputedStyle(或IE的currentStyle)。

这个问题/答案对差​​一些非常好的信息以及如何检查一个良好的功能:

myDiv.style.display returns blank when set in master stylesheet

+0

啊,我想这是有道理的。谢谢你快速的回复! – user3602839